Sam*_*abu 8 windows-installer wix major-upgrade
我们正在尝试进行重大升级.在我调查的过程中,我找到了两种方法.
一个是使用升级ID,另一个是Majorupgrade标记.
似乎Majorupgrade很容易做到.但是,scheduleinitialize操作之前的计划不包含任何内容.
我不确定应该使用哪个.
主要是哪一个[和推荐]?
Wim*_*nen 20
在wix 3.5中引入了MajorUpgrade元素,以简化您通常使用Upgrade元素执行的操作.所以,而不是像这样的东西:
<!– Major upgrade –>
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Minimum="$(var.ProductVersion)" OnlyDetect="yes" Property="NEWERVERSIONDETECTED" />
<UpgradeVersion Minimum="1.0.0" IncludeMinimum="yes" Maximum="$(var.ProductVersion)" IncludeMaximum="no" Property="OLDERVERSIONBEINGUPGRADED" />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts After="InstallValidate" />
</InstallExecuteSequence>
<Condition Message="Can't downgrade">
NOT NEWERVERSIONDETECTED
</Condition>
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
<MajorUpgrade DowngradeErrorMessage="Can’t downgrade." />
Run Code Online (Sandbox Code Playgroud)
旧方法不仅更冗长,而且还要求您重复Product元素中指定的升级代码和产品版本.因此,上面的示例必须使用wix变量来保持它们的同步.如果出错,升级将无法正常运行.
新MajorUpgrade元素没有任何复杂性,所以我建议你使用它.另请参阅Bob Arnson介绍的MajorUpgrade这篇博客文章以及关于该主题的wix 文档中的主题.
| 归档时间: |
|
| 查看次数: |
5170 次 |
| 最近记录: |