【发布时间】:2012-11-02 16:51:53
【问题描述】:
我在我的部署版本之间更改了 UIRef 标记。
从 1.0 版开始:<UIRef ID="WixUI_FeatureTree" />
到 2.0 版:<UIRef ID="WixUI_Advanced" />
Wix 3.6 版
现在,当我运行 2.0 版安装程序时,它没有检测到 以前的版本,所以不要在升级过程中卸载 它会在现有版本旁边安装一个新版本。
中间版本升级正常(1.0->1.1->1.2)。
2.0 的主要变化是:
- 主要下的新子功能
- 将 UIRef 从 WixUI_FeatureTree 更改为 WixUI_Advanced 允许部署从“AllUsers”和“Single User”中进行选择
移除现有产品定义为:
<InstallExecuteSequence>
<RemoveExistingProducts After='InstallInitialize' />
<Custom Action=...
...
我的产品定义为:
#UpgradeCode# is consistent between versions
#ProductId# is changed between versions
<Product Id="#ProductId"
UpgradeCode="#UpgradeCode#"
Name="!(loc.ApplicationName)"
Language="1033"
Codepage="1252"
Version="2.0.0"
Manufacturer="!(loc.Manufacturer)">
<Package
Id="*"
InstallerVersion="300"
InstallPrivileges="elevated"
Languages="1033"
Compressed="yes"
InstallScope="perMachine"
Manufacturer="!(loc.Manufacturer)"
SummaryCodepage="1252"
Platform="x86"
Description="!(loc.ApplicationName)"/>
<Upgrade Id="#UpgradeCode#">
<UpgradeVersion OnlyDetect="no" Property="PREVIOUSFOUND"
Minimum="1.0.0" IncludeMinimum="yes"
Maximum="2.0.0" IncludeMaximum="no"/>
</Upgrade>
我想知道是否有什么我可以做的 强制安装程序检查升级并执行 删除不再处理的先前版本 跟随我的变化。
【问题讨论】:
标签: visual-studio installation wix