我只想在卸载时重启。这是从我的WiX的文件片段:为什么我的安装程序总是提示重启
<InstallExecuteSequence>
...
<Custom Action="CleanRegistry" Sequence="7100">REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE</Custom>
<ScheduleReboot Sequence="7200">REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE</ScheduleReboot>
</InstallExecuteSequence>
运行生成的MSI生成以下日志:
MSI (s) (48:7C) [10:19:29:951]: Skipping action: CleanRegistry (condition is false)
MSI (s) (48:7C) [10:19:29:951]: Doing action: ScheduleReboot
这怎么可能,同样的条件计算结果为假,那么真实的吗? ScheduleReboot是否忽略它的条件?
编辑:我也试图使用条件REBOOT〜=“强制”来有条件地执行一个命令,当我的customaction重新启动请求。这种情况从来没有评估为真,我的命令没有运行。该属性通过从自定义操作调用MsiSetProperty进行设置。无论是这种自定义操作都不起作用,或者我的情况出错了!有什么建议么?
在您的MSI触发ScheduleReboot中可能会有另一个操作。你有没有尝试使用Orca搜索它? – 2010-09-22 09:35:19
我的WiX文件只有一个ScheduleReboot操作,并且安装日志显示在我的定制后立即执行相同的条件并被跳过。 – mchr 2010-09-22 09:40:21