Windows [cmd.exe]命令显示带超时的消息框?

时间:2014-01-16 15:13:16

标签: windows cmd command messagebox windows-shell

注意:这是 question-with-answer ,以便记录其他人可能认为有用的技术,以便了解其他人更好的解决方案。请随意添加批评或问题作为评论。也可以随意添加其他答案。 :)


如何通过键入单个Windows命令来显示消息框,例如在“开始”菜单的运行对话框中,还是在[cmd.exe]命令解释程序中?

4 个答案:

答案 0 :(得分:26)

一种方法是使用明显未记录的功能,即[mshta.exe],Windows .hta HTML应用程序的运行时引擎,接受一般URL作为命令行参数,包括javascript:协议URL:< / p>

mshta "javascript:var sh=new ActiveXObject( 'WScript.Shell' ); sh.Popup( 'Message!', 10, 'Title!', 64 );close()"

The resulting messagebox

此命令可以在例如[cmd.exe]],或者例如在“开始”菜单的运行对话框中,可能与 schtasks 命令结合使用,以创建一个计时器......

上述消息框在10秒后超时,但指定0秒超时意味着“不要超时”,从而产生更普通的持久消息框。

对于更简单的消息框,您可以改为使用MSHTA主机提供的alert功能。

答案 1 :(得分:7)

在命令提示符下:

msg %username% Message

有趣的参数是:

/w        (wait for user) 
/time:<seconds>

答案 2 :(得分:1)

发现如果将msg.exe从Win7 Pro计算机复制到Win7 Home计算机,则可以正常运行。将msg.exe复制到C:\ Windows \ System32文件夹中。

答案 3 :(得分:1)

如果您使用要显示的消息创建小型VBScript,该怎么办? 即创建名为“Message.vbs”的电子文件,内容为:

MsgBox "Some info here", 0, "Message Title"

并将其称为:

cscript.exe PATH\Message.vbs