【发布时间】:2013-07-31 16:28:27
【问题描述】:
我使用Wix 3.6 开发了一个安装程序,可以成功安装应用程序的所有元素。
现在,每次我给一个更高版本的msi,我希望安装程序提示用户卸载它。从现在开始我已经尝试过:
<Product
Id="*"
Name="!(loc.ProductName)"
Language="3082"
Codepage="1252"
Version="1.0.1"
Manufacturer="$(var.ProductManufacturer)"
UpgradeCode="$(var.UpgradeCode)">
<Property Id="PREVIOUSVERSIONINSTALLED" Secure="yes" />
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Minimum="1.0.0.0" Maximum="99.9.9.9" IncludeMiminum="yes" IncludeMaximum="no" Property="PREVIOUSVERSIONSINSTALLED" />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts Before="InstallInitialize" />
</InstallExecuteSequence>
此代码成功卸载了我计算机上任何以前安装的版本。但它不会询问用户是否确定这样做。
我需要的是 Wix 安装程序来提示用户说出如下消息:
已安装您的 [ProductName] 的早期版本。你想卸载它吗? [是的|没有 ] 选项。
有没有办法提示用户并检查他是否真的要卸载任何以前的版本?
【问题讨论】:
-
如果用户点击“否”会发生什么?
-
WiX 甚至支持这样做吗?从个人经验来看,即使是微软自己的构建安装程序的软件也没有以正确的方式完成这样的事情而没有任何问题。