Automated MSI installation

吃可爱长大的小学妹 提交于 2019-11-27 01:09:29

问题


What is the best way to automatically install an MSI file or installer .exe? We want to do some automated testing from our build system on the installed copy of the product. Our installer has the usual license acceptance screen, install location, etc.


As FryHard pointed out there are two options in particular that seem handy:

  • "/quiet" - no use interaction
  • "/passive" - process bar only, unattended mode

回答1:


To automate the installation of an MSI package, you can use the /I option, like this:

msiexec.exe /qn /i mypackage.msi

Keep in mind that you need to specify the properties the MSI package expect the user to specify through the UI, and for which it does not have a default value.

You can use the Orca tool to see the list of properties and fiddle around with MSI conditions, etc. And to set values for the properties, you can just specify it in command line; e.g. to set a property ISDEBUG:

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

Side note: To automate uninstall, use the /X option with the package or the product code:

msiexec.exe /qn /x mypackage.msi

or this (where you need to change the CLSID with your product code):

msiexec.exe /qn /x {B741B8A3-8DCB-44E0-B06F-2A11F56572DB}



回答2:


If you head over to one of your MSI packages in the command prompt and run a:

Myproduct.MSI /?

A screen will pop up with all the details of command line parameters that you can pass to the MSI. I am sure that in this way you could install your application via a command prompt and in this way automate it.




回答3:


Is not released yet but could work for future references.

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

Auto-deployment with nugget packages.



来源:https://stackoverflow.com/questions/181342/automated-msi-installation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!