与 PowerShell 并行安装软件

install software parallelly with PowerShell

有没有一种方法可以使用 PowerShell 并行安装多个 .msi 和 .exe 文件。 假设我们将所有安装程序都放在一个目录中

我找到了一个脚本来按顺序安装所有文件。 Install all the files from a given folder with Powershell

上一个答案: 两个MSI文件不能同时运行,原因在this short, old answer on serverfault中解释.


本质:本质上MSI安装程序运行作为一个事务,因此设置一个互斥锁来“锁定”系统当它完成安装时。这主要是为了支持回滚——这意味着如果安装由于某种原因失败,您可以将系统恢复到原始状态。该锁还有助于通过促进适当的可调试性和失败安装的日志记录以及防止死锁和重复覆盖等来确保一般可靠性...

你应该知道的事情:

  • 设置互斥锁后,其他 MSI 文件可以启动到 GUI 部分,但无法启动它们进行实际安装(系统更新)。如果这样做,您将收到一条错误消息。

  • 请注意,旧式安装程序(exe 文件)不会注意此锁定,并且可以 运行 而 MSI 文件 运行ning,但您不应该这样做。 运行 个安装程序 并检查每个安装程序是否有错误。现代计算机的改进 I/O 意味着安装程序 运行 非常快,只需按顺序安装即可。 There are some speed-tweeks for MSI installers.


链接:

  • Other installation In Progress Hanging my Wix Install