我已经搜索了好几个星期来解决我的问题,并且无法找到一种可以在我可能需要使用的每台机器上运行的好方法。
我知道START命令会打开一个新窗口来执行.exe,但我希望保持在同一个窗口并运行.exe
(因为我希望我的批处理文件仅在.EXE运行完毕后继续)
我发现在某些计算机上,当我执行.exe时会打开一个新窗口而其他计算机停留在同一个窗口中,这让我觉得我的代码很好但是计算机上某个地方有不同的设置。
你能帮忙吗?我有什么选择?我正在运行的.exe是NASTRAN,它是一个在命令窗口运行的工程求解器。答案 0 :(得分:26)
要等待命令终止,您应该使用WAIT
标志:
start /WAIT c:/windows/system32/notepad.exe
您可以在不使用B
标志创建新窗口的情况下启动应用程序:
start /WAIT /B "c:/windows/system32/cmd.exe"
您还应该尝试阅读启动命令的帮助文本:
start /?
答案 1 :(得分:6)
您可以使用cmd /k example.exe
答案 2 :(得分:4)
你可能在某些只在那里调用的机器上有一个不同的.exe变种,并产生一个单独的窗口,原因我不知道。在所有计算机上搜索.exe文件并进行比较。
另外,发布批处理文件代码,以便我们可以准确地了解如何启动.exe。
答案 3 :(得分:1)
您是否尝试在批处理文件中使用call。它在同一窗口中运行exe。作为批处理文件。批处理文件中的下一个语句在此exe运行完毕后执行
答案 4 :(得分:1)
您可以考虑根本不使用start 。只需直接启动可执行文件。
答案 5 :(得分:0)
为了做到这一点,您必须从它所在的目录运行一个可执行文件,并且还必须避免使用“启动”命令。< /p>
例如:
cd C:\MyDirectory\
MyApplication.exe -Parameter1 -ParameterN