16

自动安装 MSI 文件或安装程序 .exe 的最佳方法是什么?我们想从我们的构建系统对已安装的产品副本进行一些自动化测试。我们的安装程序具有通常的许可证接受屏幕、安装位置等。


正如 FryHard 指出的那样,有两个特别方便的选项:

  • "/quiet" - 不使用交互
  • "/passive" - 仅进程栏,无人值守模式
4

3 回答 3

25

要自动安装 MSI 包,您可以使用 /I 选项,如下所示:

msiexec.exe /qn /i mypackage.msi

请记住,您需要指定 MSI 包期望用户通过 UI 指定的属性,并且它没有默认值。

您可以使用Orca 工具查看属性列表并调整 MSI 条件等。要设置属性的值,您可以在命令行中指定它;例如设置一个属性ISDEBUG:

msiexec.exe /qn /i mypackage.msi ISDEBUG=1

旁注:要自动卸载,请在包或产品代码中使用 /X 选项:

msiexec.exe /qn /x mypackage.msi

或者这个(您需要使用您的产品代码更改 CLSID):

msiexec.exe /qn /x {B741B8A3-8DCB-44E0-B06F-2A11F56572DB}
于 2008-10-08T05:09:20.963 回答
13

如果您在命令提示符下转到您的 MSI 软件包之一并运行:

Myproduct.MSI /?

将弹出一个屏幕,其中包含您可以传递给 MSI 的命令行参数的所有详细信息。我相信通过这种方式,您可以通过命令提示符安装您的应用程序并以这种方式自动化它。

于 2008-10-08T04:37:59.323 回答
0

尚未发布,但可以供将来参考。

http://www.paulstovell.com/octopus/intro

使用 nugget 包进行自动部署。

于 2012-03-22T19:09:17.270 回答