批处理脚本 - 在脚本中调用命令

Batch script - calling commands mid-script

我需要你们的一些想法。主要是关于如何解决这个问题。我正在尝试为我们的服务台自动化大多数现代版本 Windows 附带的工具。它是问题步骤记录器,或 PSE.exe。显然,对于某些用户来说,使用该工具是 "too hard",我认为这将是练习脚本编写和学习一些东西的好例子。

我实际上有一些东西工作得很好,但我有一个问题让我很恼火,我想不出一个解决方案,或者它这样做的原因。

@ECHO OFF
TITLE PSR Script - DO NOT CLOSE, IT WILL AUTOMATICALLY CLOSE ON ITS OWN.
CD %TEMP%
MKDIR PSR
CD PSR
SET psrdir=%TEMP%\PSR
psr.exe /start /output "%psrdir%\ScreenCapture.zip" /maxsc 50 /gui 1 /stopevent 8675309
If exist "outlook.exe" "GOTO Outlook" else "GOTO Explorer"
:Outlook
start "" "OUTLOOK.EXE" /c ipm.note /m "support@msp.net&subject=Screen Capture&body=Please see attached file." /a "%psrdir%\ScreenCapture.zip" & GOTO exit
:Explorer
explorer.exe /n /root,%psrdir% & GOTO exit
:exit
exit

我的问题是,一旦我开始启动 PSR 可执行文件,脚本就会挂起,直到它关闭。理想情况下,我想要 "Press any key to continue..." 或弹出窗口之类的提示。然后我可以添加一个 PSR.exe /stop,并通过脚本关闭程序。按照目前的编写方式,我必须告诉我的用户不仅要停止,还要关闭它。我知道这没什么大不了的,但我确实想知道如何解决它。

不管psr.exe的状态如何变化,让程序继续

psr.exe /start /output "%psrdir%\ScreenCapture.zip" /maxsc 50 /gui 1 /stopevent 8675309

start psr.exe /output "%psrdir%\ScreenCapture.zip" /maxsc 50 /gui 1 /stopevent 8675309


要使用 VBS 创建弹出窗口:

批处理:使用 start popup.vbs 每当你想要它弹出时,或者 start popup.vbs /wait 等待弹出窗口关闭后再做其他事情。

VBS (popup.vbs):

Popup=msgbox("YourMessage",0,"YourTitle")

上面vb脚本中的0表示只会有一个ok按钮。如需更多选项,并阅读有关 vb 消息框的更多信息 click here

您可以添加以下行来创建 vb 文件,运行 然后删除它:

echo Popup=msgbox("Click to close",0,"YourTitle")>popup.vbs
start popup.vbs
pause
del popup.vbs