我使用WIX工具集(3.10)制作了一个安装程序。我想启用升级,但我无法使其正常运行。每次运行msi时都会安装另一个版本。 我无法弄清楚出了什么问题。任何人都可以提出建议吗?
ZZZZZ
答案 0 :(得分:0)
我为UpgradeCode
使用GUID(我想这是UPGRADE_CODE
的意思)。
您还可以设置REINSTALLMODE
属性以更改重新安装行为。
看起来像这样:
<SetProperty Id="REINSTALLMODE" Value="amus" After="FindRelatedProducts">Installed AND REMOVE<>"ALL"</SetProperty>
请注意a
将重新安装您的产品,无论安装的版本如何。但您可以查找安装程序所需的字符。
对于Value="amus"
,您可以参考Microsoft文档here
答案 1 :(得分:0)
AllowSameVersionUpgrades =&#34;是&#34;可能会解决这个问题。在测试升级时,您需要始终更新安装程序之间的版本(前3个部分之一),或者只允许相同的版本升级。
来自wix website 的
当设置为no(默认值)时,MSI允许安装具有相同版本和升级代码(但产品代码不同)的产品,并将其视为两个产品。设置为yes时,WiX会设置msidbUpgradeAttributesVersionMaxInclusive属性,该属性告诉MSI将产品视为与主要升级版本相同的版本。
因此,您的安装认为这两个安装是分开的,即使它们共享相同的升级代码,这就是您在添加删除程序列表中获得2个副本的原因。
答案 2 :(得分:0)
除了MajorUpgrade
属性之外,您的UpgradeCode
在未来版本中不会发生变化至关重要。可能是问题吗?