我有一些要求说明我们必须在安装阶段设置调度程序任务,然后在卸载阶段自然删除它们。
然而,当我们引入升级机制(我们只进行重大升级)时,这种情况会变得复杂,我们必须保留这些调度程序任务。
由于我们决定使用升级逻辑的方式:
<RemoveExistingProducts After='InstallFinalize'/>
我们的新版本首先安装,然后以前的版本获得卸载,因此执行取消计划操作并删除调度程序任务:
<Custom Action='CA_unscheduleUpdates' Before="InstallFinalize">
<![CDATA[Installed]]>
</Custom>
有没有办法控制这种情况,以防我们升级并且不启动非计划自定义操作?也许我可以在自定义操作C ++代码中控制一些东西?
非常感谢你们!
答案 0 :(得分:2)
您可以使用“Not UPGRADINGPRODUCTCODE”调整自定义操作执行。
http://msdn.microsoft.com/en-us/library/windows/desktop/aa372380(v=vs.85).aspx