每次我编写的批处理文件都会打开一个命令提示符窗口,并保持打开状态,直到程序完成。在.bat文件中包含哪个命令字符串可以不打开CMD窗口或打开它并立即隐藏它?我必须在MSW7 Pro内置的编程范围内操作。现在,我只是试着用msg命令来解决这个问题。成功的话,只有消息窗口本身应该出现在屏幕上。
CreateObject("Wscript.Shell").Run "foo.bat", 0, True
cmd /c "Your Command and Parameters"
exit
。@echo My Batch File
exit
另外,start
命令可能会对你有所帮助。 它可以设置为最小化窗口。
START /MIN MyBatch.Bat
例如,要从批处理文件中启动任务管理器并隐藏命令窗口:如果运行32位图形用户界面(GUI)应用程序,则cmd在返回到命令提示符之前不会等待应用程序退出。如果您从命令脚本运行应用程序,则不会发生此行为。
start taskmgr.exe
这将立即退出,打开任务管理器并不会留下任何命令窗口。
更多信息请参见:https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/start
powershell -window hidden -command ""
。只要确保在结尾处加上powershell -window normal -command ""
,如果你的脚本可能从 cmd 控制台运行(而不是双击运行)。窗口仍然会出现一两秒钟,因为 PowerShell 解释器被调用;如果此脚本的执行是自上次启动以来 PowerShell 的第一次调用,则可能需要几秒钟。我所知道的唯一其他选择是像 Squashman 建议的那样使用 VBScript。 - rojo