WiX:可卸载的补丁

时间:2014-05-14 16:31:57

标签: wix windows-installer patch

根据this回答中的建议,我有一个补丁,通过使用PATCHNot Installed条件来阻止自定义操作的运行。

安装补丁时效果很好,但我还要求补丁需要卸载。这是一个问题,因为当我们的原始产品被创作时,我们遗憾地没有考虑到未来修补的可能性。我对卸载补丁的理解是,Windows Installer基本上以REINSTALL模式重新运行原始包。这将对应用程序配置造成严重破坏,因为它需要一些用户提供的值,例如IIS,配置文件等。

我已经读过,可以重新缓存最初安装的软件包,其中包含InstallExecuteSequence中具有正确条件的更新软件包,以便在重新安装模式下跳过操作,但它看起来有风险/黑客。还有其他方法解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

重新缓存并不像听起来那么危险,但它是一种罕见的补丁替代品。您可以使用具有REINSTALL = ALL REINSTALLMODE = vomus的命令行来执行此操作。

这很罕见,因为如果您要重建MSI来修复这些条件,您可以一路走下去并进行重大升级,您可以在其中提供补丁中的任何修复程序以及修复CA条件以使新产品更容易修补,包括卸载补丁。