You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WIX构建报错ICE61:如何不通过抑制检查修复Upgrade.ActionProperty问题?

解决WIX 3.11.2中ICE61错误的非抑制方案

问题背景

为卸载产品旧版本,我在product.wxs中配置了以下代码:

<Property Id="OLD_VERSION" Secure="yes" Value="{53...}" />
    
<Upgrade Id="EA...">
    <UpgradeVersion OnlyDetect="no" Property="OLD_VERSION" Minimum="0.0.0" Maximum="19.0.0" />
</Upgrade>

MSI包可正常构建运行,升级流程也正常,但Visual Studio中出现错误:ICE61: Upgrade.ActionProperty OLD_VERSION cannot be authored in the Property table,该错误导致DevOps中断。想咨询除了在VS项目设置的工具选项卡中抑制ICE61外,是否有其他修复方法?

修复方案

  • 删除手动定义的Property元素:ICE61错误的根源是手动在Property表中声明了OLD_VERSION,而这个属性是由UpgradeVersion元素自动生成和维护的,手动定义会和WIX的内置逻辑冲突。直接移除<Property Id="OLD_VERSION" Secure="yes" Value="{53...}" />即可。
  • 在UpgradeVersion中设置Secure属性:如果需要OLD_VERSION具备Secure特性,无需手动声明Property,直接在UpgradeVersion标签内添加Secure="yes"属性,修改后的代码如下:
<Upgrade Id="EA...">
    <UpgradeVersion OnlyDetect="no" Property="OLD_VERSION" Minimum="0.0.0" Maximum="19.0.0" Secure="yes" />
</Upgrade>

这种修改既保留了旧版本卸载功能和属性的安全要求,又能避免触发ICE61检查错误。

内容的提问来源于stack exchange,提问作者fableal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 07:15:31