我正在使用WiX 3.9工具集开发安装程序项目。我试图在安装新版本期间卸载以前的版本。我在product.wxs中试过了以下一个,
<Product Id="*" Name="WIXDemoApp" Language="1033" Version="1.0.0.0" Manufacturer="Man name" UpgradeCode="993d89e6-07ec-4d33-abc5-957360bc66e1">
<Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
<Upgrade Id="89CF8BE7-05EE-4C7E-9EFC-0249DD260EBB">
<UpgradeVersion
Minimum="1.0.0.0" Maximum="99.0.0.0"
Property="PREVIOUSVERSIONSINSTALLED"
IncludeMinimum="yes" IncludeMaximum="no" />
</Upgrade>
<Upgrade Id="89CF8BE7-05EE-4C7E-9EFC-0041DD260EBB">
<UpgradeVersion
Minimum="1.0.0.0" Maximum="99.0.0.0"
Property="PREVIOUSVERSIONSINSTALLED"
IncludeMinimum="yes" IncludeMaximum="no" />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts Before="InstallFinalize" />
</InstallExecuteSequence>
</Product>
我收到此错误:
错误LGHT0091:重复符号&#39; WixAction:InstallExecuteSequence / RemoveExistingProducts&#39;找到。这通常意味着Id是重复的。检查以确保给定类型(文件,组件,功能)的所有标识符都是唯一的。
问题是什么?如何解决?
答案 0 :(得分:1)
我注意到-两个属性标记为PREVIOUSVERSIONSINSTALLED
,另一个属性的ID也标记为PREVIOUSVERSIONSINSTALLED
Upgrade ID
,因为它们之间的唯一区别是数字0249
和0041
除此之外,您的代码应该没有任何问题-然后,您没有提供代码的 all ,因此可能存在一个或多个重复项,例如错误说。