2011-12-19 169 views
3

如何强制我的Wix installer始终安装应用程序?目前,当我第二次运行.msi文件时,安装程​​序继续进入uninstall屏幕,但我想确保安装程序always installs像我第一次使用它的应用程序。有没有这方面的一些最佳做法?每次都强制安装

一个更好的问题可能是...... Windows安装程序在初次安装后再次运行.msi文件时是否知道产品需要维护?因为如果它只是检查注册表,我可以在卸载后删除注册表项......有人知道吗?我真的可以用这个帮助。

编辑:我想通了。如果删除HKEY_CURRENT_USER/Software/Microsoft/Installer/Products/YOURPRODUCTGUIDHERE中的引用,安装程序将安装.msi的全新安装。因此,在安装结束时,抛出一个自定义操作来删除该注册表项,以便下一次安装工作:)

+0

可能重复://计算器。 com/questions/775259/wix-always-overwrite-the-before-version) – 2011-12-19 14:03:44

+0

我已经使用了主要的升级,但它不能像该文章中描述的那样工作;它有点误导。我只是想每次都进行完整安装。实际上,我的安装程序甚至不必卸载,因为我正在为我公司的安装程序工作,只能在内部使用。然而,它总是要安装,就像第一次... – Alexandru 2011-12-19 14:14:10

回答

1

我想通了。如果删除HKEY_CURRENT_USER/Software/Microsoft/Installer/Products/YOURPRODUCTGUIDHERE中的引用,安装程序将安装.msi的全新安装。因此,在你安装结束后,扔在一个自定义操作删除注册表项,在接下来的安装工作:) [WiX--总是覆盖之前的版本(HTTP的

2

我不喜欢强制安装这样的安装程序(为什么不把它删除第一现有产品或尝试获得升级工作),但你可以尝试使用从批处理脚本如下(或任何与此有关的脚本类型):

msiexec.exe /fa your_msi_file.msi 

这将迫使所有文件的安装。有关更多详细信息,请参阅here

+0

它是我的安装程序不要卸载以前的版本的要求;它应该支持多种部署。 – Alexandru 2011-12-19 17:00:25