我的应用程序设置为只允许一次安装。如果已经安装了应用程序,则可以使用此消息轻松弹出
有没有办法让用户在此时选择卸载应用程序?我不希望我的用户必须转到menu -> app -> uninstall
或control panel
。我想让他们轻松删除旧版本并安装新版本。
答案 0 :(得分:2)
该消息是Windows Installer的一项功能 - 它只是一切工作的方式,基于产品的ProductCode和PackageCode存在于系统上的事实。由于该消息来自Windows(而不是WiX),因此无需定制它来安装提示它的MSI文件。
每个系统安装不能安装多个相同的ProductCode,因此不存在使用相同ProductCode安装另一个MSI的选项,除非您通过安装更新版本的MSI进行次要更新带有更新命令行的文件。
您可以轻松升级的方法是使用WiX MajorUpgrade标记。您还需要在前3个字段中增加ProductVersion,使用新的ProductCode,保持相同的UpgradeCode,并确定升级顺序的位置,这取决于您是否为更新的文件增加文件版本,并保留组件ID相同的资源。这将在卸载旧产品时安装新产品。这个标准的自动主要升级没有说“你想升级到这个新产品吗?”。它只是这样做,假设人们实际上非常聪明,他们很清楚他们有一个新版本的已安装产品,这将升级它。对于未安装任何旧版本的用户,升级也是全新安装。