Wix 在重新安装模式下启动MSI

Wix 在重新安装模式下启动MSI,wix,windows-installer,setup-project,Wix,Windows Installer,Setup Project,我需要根据目标机器上安装的版本启动MSI。 详细说明: 如果MSI的版本低于当前安装的版本,则不应安装 否则,应该使用REINSTALLMODE=omus重新安装 我知道这可以通过在引导程序应用程序中包装MSI或使用cmd启动MSI来实现。 但是,这种智能是否可以在MSI内部实现,这样当我双击它时,它就可以正常启动了 LaunchCondition或CustomAction是否有助于实现这一点 我正在使用VisualStudio安装项目来构建我的MSI。使用WIX有助于实现这一点吗 谢谢,

我需要根据目标机器上安装的版本启动MSI。 详细说明:

  • 如果MSI的版本低于当前安装的版本,则不应安装
  • 否则,应该使用REINSTALLMODE=omus重新安装
我知道这可以通过在引导程序应用程序中包装MSI或使用cmd启动MSI来实现。 但是,这种智能是否可以在MSI内部实现,这样当我双击它时,它就可以正常启动了

LaunchCondition或CustomAction是否有助于实现这一点

我正在使用VisualStudio安装项目来构建我的MSI。使用WIX有助于实现这一点吗

谢谢,
-Kunal

第一个可以在MSI内部完成,但第二个不能。具有AllowDowngrades和DegradeErrorMessage属性,可实现检测和块模式


第二个是不可能的,因为一旦MSI启动,它是不可变的。您需要从burn之类的引导程序调用以实现此目的。

您认为您正在解决的问题是什么?您处于Visual Studio设置中,只需执行RemovePreviousVersions升级以替换任何旧版本,这也将是新客户端的新安装。