Windows 10家庭版取消了msg.exe。
我需要一个可用于从批处理脚本向本地用户(而不是网络)弹出消息的子程序。
非常感谢, -T
答案 0 :(得分:0)
您可以使用VBS脚本执行此操作,例如:
set wshell = wscript.createobject("wscript.shell")
msg = "<No message provided>"
title = "Information"
timeout = 0
if wscript.arguments.count > 0 then
msg = wscript.arguments.item(0)
if wscript.arguments.count > 1 then
title = wscript.arguments.item(1)
if wscript.arguments.count > 2 then
timeout = wscript.arguments.item(2)
end if
end if
end if
wscript.quit(wshell.popup(msg, timeout, title, 0))
只需将其放入paxmsg.vbs
中并用以下命令调用即可:
cscript /nologo paxmsg.vbs "My text"
或:
cscript /nologo paxmsg.vbs "Text with 5s timeout" "My Title" 5
基本用法是(a):
cscript /nologo paxmsg.vbs <optionalText> <optionalTitle> <optionalTimeout>
,您可以从脚本本身的前几行中识别每个参数的默认值。
ERRORLEVEL
可用于您的批处理脚本中,以检测是否按下了OK
或它超时了(当然,假定非零超时值)。
例如,通过以下调用:
cscript /nologo paxmsg.vbs "Dialog box with sample text" "Pax's dialog box"
导致:
(a)请注意,使用cscript
很可能是您想要的行为,因为它将一直等到对话框关闭,然后继续操作您的批处理脚本。如果希望它立即继续,则可以使用wscript
。