我是Wix工具集的新手。我已成功在Wix中制作了我的第一个安装程序,但现在我对我的软件更新感到困惑,这些更新通常很小。
在我的安装程序中,我想检查用户是否安装了任何旧版本,然后我想向他展示三个选项;
对于Modify我可以简单地将InstallReadyDlg显示为下一个对话框,然后卸载以前的版本并安装新版本。
但我无法知道如何触发卸载或修复以前安装的版本。
任何提示都会受到高度赞赏。
注意:我知道如何显示这些选项以及如何检测用户是否安装了任何旧版本。
答案 0 :(得分:1)
这不是通常的事情,因为:
在此上下文和对话框中普遍理解修改意味着添加或删除功能。
您无法从将要删除的已安装产品的对话框中正确升级。换句话说,您的计划很可能无法工作,因为您需要浏览到新的MSI(网站?CD?),然后从修改对话框中启动它(当您显示当前产品对话框时如何?)然后尝试使用对话框显示升级产品。
所以没有人安装这种行为,并且没有人期望非标准行为,并且很有可能无法正常工作。
话虽如此,这就是为什么你可以从你刚才包含的内置WiX UI对话框中免费修改/修复/删除,所以你无需做任何事情来修复,删除或修改已安装的功能工作。一切都在那里。
已安装的产品升级了补丁(用于小修补程序),以及主要升级,您只需将新的MSI构建为全新产品并包含MajorUpgrade标记,以便在安装了旧版本时删除旧版本。只需安装新产品(从CD,网站或其他任何部分),它始终是一个全新的完整安装,由于该MajorUpgrade元素而升级并删除任何先前版本。