2013-07-22 26 views
2

自定义操作,我们在那里做了重大升级的产品之前,我们需要
backup某些配置/资源文件和后同步他们安装方案。WIX重大升级:运行在第二次运行

所以我们运行一个自定义操作来备份文件为:

<InstallExecuteSequence> 
.. 
     <Custom Action='BackupAppFolder' Before="RemoveFiles"> 
     <![CDATA[(Installed AND NOT REMOVE="ALL") OR (UPGRADINGPRODUCTCODE)]]> 
     </Custom> 
.. 
</InstallExecuteSequence> 

及主要升级预计为

<MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="!(loc.DowngradeMessage)" 
       Schedule="afterInstallInitialize"/> 

'同步' 的行动计划为

<InstallExecuteSequence> 
.. 
     <Custom Action='ResourceSync' Before="InstallFinalize"> 
     (Installed AND NOT REMOVE = "ALL" AND NOT WIX_UPGRADE_DETECTED) 
      OR (NOT Installed AND WIX_UPGRADE_DETECTED) 
     </Custom> 
.. 
</InstallExecuteSequence> 

我想要安排ResourceSync操作,以便在
期间运行- 维修/补丁
- 主要升级的第二轮即安装新产品
的 - 次要升级

而无法运行期间
- 卸载
- 全新安装
- 第一次运行的主要升级,即卸载现有产品

编辑:上面的问题是,它也运行在主要升级的第一阶段。

回答

0

尝试下一个:

REINSTALL OR PATCH OR (WIX_UPGRADE_DETECTED AND NOT REMOVE="ALL") 
+0

都能跟得上没有在这两个重大升级runs..i work..runs希望它在第二轮只运行 – Amitd

相关问题