WIX。如何使用相同版本和不同产品代码执行主要升级?

时间:2013-12-20 18:52:45

标签: wix

基本上我需要改变这种行为:

  

安装具有相同版本和升级代码的产品(但是   MSI允许和处理不同的产品代码作为两种产品。

我需要将其作为重大升级进行威胁。因此,在v 1.0.1(旧版本,不同的ProductCode)上安装v 1.0.1将卸载旧版本。 这是因为除非我们要公开发布,否则我对改变版本不感兴趣。

我有:

<Product Id="*" UpgradeCode="2067109E-DCDA-4639-B4FC-B95E0A239E1A" Version="1.0.1"...
....
<MajorUpgrade AllowSameVersionUpgrades="yes" ...

我现在拥有的是添加/删除程序下的两个条目,这不是我想要的。

1 个答案:

答案 0 :(得分:0)

只需添加第四个版本号(Major.Minor.Patch.Build)并为每个新版本增加内部版本号。

使用相同的UpgradeCode但不同的ProductCode,将允许任何具有相同(Major.Minor.Patch)的安装程序作为升级安装,但至少您将知道构建版本已安装。

确保使用

<MajorUpgrade AllowSameVersionUpgrades="yes"

请注意,这不会阻止在以后的版本存在时安装早期版本。