我需要配置我的WiX項目以便能夠安裝該產品的多個次要版本。 IE:我可以安裝1.0,1.1和1.3。如果我嘗試安裝1.2,它會起作用,但如果我使用1.1進行嘗試,它將在繼續之前卸載先前的1.1安裝。配置WiX項目以安裝多個版本,但刪除相同的次要版本
到目前爲止,這是我在我的Upgrade
標籤:
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Minimum="$(var.MajorMinorVersion)" IncludeMinimum="yes"
Maximum="$(var.VersionNumber)" IncludeMaximum="no" Property="OLDERMINORFOUND"/>
</Upgrade>
UpgradeCode
是我WXI文件MajorMinorVersion
定義的GUID是一樣的VersionNumber
,但與構建在0(1.1。當版本是1.1.12時爲0)。
我猜我有兩個可能性:
我再拍UpgradeVersion
標籤或更新當前一個具有最大在下一個小版本,並從搜索中排除:
<UpgradeVersion Minimum="$(var.MajorMinorVersion)" IncludeMinimum="yes"
Maximum="$(var.NextMinorVersion)" IncludeMaximum="no"/>
以某種方式使用自定義操作設置NextMinorVersion
。也許使用屬性。
或者,每次次要版本更改時都要手動更改UpgradeCode。或者讓guid的前幾個字符代表版本,其餘的都是唯一的?我懷疑這是一個好主意,雖然...
所以基本上,最好的方法來實現這一點,希望只有一個安裝項目的所有版本?
編輯
我進去看了MajorUpgrade
標籤,但我不認爲我可以配置它都在同一時間許多次要版本。任何關於此的燈都是讚賞的。
我也看着作出預處理器擴展,將使用功能操作的版本號,所以我可以這樣做:
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Property="OLDERMINORFOUND"
Minimum="$(var.MajorMinorVersion)" IncludeMinimum="yes"
Maximum="$(myprefix.NextMinor($(var.VersionNumber)))" IncludeMaximum="no"/>
</Upgrade>
見我對細節的答案。