我想仅在升级和修补程序上运行Wix自定义操作,而不是安装/重新安装或修复。所以基本上只有当应用程序的版本号增加时才应运行此自定义操作。我尝试了以下规则,并在修补时完全禁用了自定义操作:
<Custom Action="upgrade_action" Before="InstallFinalize">Installed AND NOT REMOVE AND UPGRADINGPRODUCTCODE</Custom>
我能做些什么来实现这个目标?
答案 0 :(得分:2)
如果这是新的主要升级产品并且您正在使用WiX MajorUpgrade元素,那么如果它正在进行升级并检测旧版本,则会设置WIX_UPGRADE_DETECTED属性。 UPGRADINGPRODUCTCODE设置在正在升级的旧产品中,已安装的产品。
如果您希望CA仅在这些条件中的任何一个条件下运行,您看起来所需要的只是WIX_UPGRADE_DETECTED或PATCH。