【发布时间】:2016-01-29 17:31:35
【问题描述】:
我有调用另一个 .exe 文件的 powershell 脚本。
Start-Process ".\file.exe" -wait
file.exe 是一个带有一些消息的简单窗口,只有一个按钮可以关闭 .exe。
这是主脚本运行的第一行。我想等待并让用户单击关闭以继续执行其余代码。
然而,进程启动了,但主程序并没有等待,而是开始执行剩下的代码。
我还有什么需要做的吗?
【问题讨论】:
-
你确定
file.exe不只是创建一些子进程然后死掉吗? -
@PetSerAl 有趣的问题,但似乎
Start-Process -Wait实际上也在等待子进程:gist.github.com/IISResetMe/46692538055e570b4a15 -
(Start-Process ".\file.exe" -PassThru).WaitForExit()怎么样? -
@MathiasR.Jessen 实际上
Start-Process在这方面不太可靠。如果您在Start-Process行中添加|?{sleep 1;1},则可以看到。
标签: powershell exe wait start-process