有没有办法使PowerShell等待安装完成?

我有一个Windows软件包列表,我使用下面的命令通过PowerShell进行安装:

& mypatch.exe /passive /norestart

mypatch.exe正在从一个列表中传递,它不会等待之前的安装完成 – 它只是继续前进。 它构build了一个正在等待安装的巨大安装窗口。 另外,我不能使用$LASTEXITCODE来确定安装是成功还是失败。

在开始下一步之前,有没有办法让安装等待呢?

Solutions Collecting From Web of "有没有办法使PowerShell等待安装完成?"

 Start-Process <path to exe> -Wait 

当然,写一个运行安装程序的单行批处理脚本。 批处理脚本将在返回之前等待安装程序完成。 从PowerShell调用脚本,这将等待批处理脚本完成。

如果您有权访问mypatch的写入方式,那么可以在完成后创建一些随机文件,PowerShell可以在while循环中检查其存在情况,并在文件不存在时进行睡眠。

如果你不这样做,你也可以让这个批处理脚本在安装程序完成时创建一个虚拟文件。

还有另外一种方式,尽管可能是所有这些中最糟糕的一种情况,就是在您调用安装程序后,对睡眠定时器进行硬编码(启动睡眠)。

编辑只是看到了JensG的回答。 不知道那个。 尼斯