【问题标题】:Batch file, message box always on top批处理文件,消息框始终在顶部
【发布时间】:2018-06-16 09:12:30
【问题描述】:

其实我有这个代码:

echo msgbox "My Message",0,"Title" > %tmp%\tmp.vbs 
wscript %tmp%\tmp.vbs
del %tmp%\tmp.vbs

如您所知,它会显示一个消息框。我希望此消息框始终位于顶部,因为如果我的代码在消息框处于焦点时打开程序,例如:

start /d "C:\Program Files\Adobe\Adobe Photoshop CC 2017" Photoshop.exe

明明打开了PS,但是消息框又回来了。

希望你能帮帮我!

谢谢!

【问题讨论】:

标签: windows batch-file command-line cmd messagebox


【解决方案1】:

你需要做的就是替换你的0:

MsgBox "My Message",vbInformation+vbSystemModal,"Title"

您甚至可以玩得开心,直接从批处理文件中运行它,在其他窗口中继续工作,但让批处理等待它关闭。

wMSG.cmd

<!-- :StartCmd
@Echo Waiting . . .
@CScript //Nologo "%~f0?.wsf"
@Choice /M "Was that okay"
@If ErrorLevel 2 Echo Sorry!
@Pause
@Exit /B
:StartWSF -->
<Job><Script Language="vbScript">
MsgBox "My Message",vbInformation+vbSystemModal,"Title"
</Script></Job>

vbInformation+vbSystemModal 可以替换为以下值:64+4096

【讨论】:

  • 它工作得很好:),但我曾经把 0+64 显示一个信息消息图标。我用 vbSystemModal 替换了 0,但现在我无法拥有该图标。我可以同时拥有图标和 vbSystemModa 吗?
  • @SantiagoCuartasRmrz,你问了一个具体问题,只使用0,我回答了。请在未来提出您想问的问题,而不是使用虚假信息,并希望响应者能够善意地重新审视他们的答案。 我已更新我的答案以纳入您的要求如果解决方案适合您,请单击我的答案左侧的大复选标记以接受它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-07-28
  • 2014-08-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多