在Wix 3.8中检测MajorUpgrade

LeR*_*kie 3 windows-installer wix wix3 major-upgrade

我正在安装软件的所有新版本作为主要升级,因为安装非常小,而且大多数情况下,所有文件都会更改。

如果完成了与全新安装相比的升级,我想跳过安装程序中的一个对话框,但是到目前为止,在以下示例中,我仍无法弄清要使用什么条件(例如“ Installed AND PATCH”)。

     <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" 
              Value="WelcomeDlg" Order="2">Installed AND PATCH</Publish>
Run Code Online (Sandbox Code Playgroud)

Phi*_*lDW 5

您需要向我们显示主要升级元素或WiX中的升级元素以获取详细信息,但是检测到您正在执行升级的方法是使用升级属性名称。有时名称为PREVIOUSVERSIONSINSTALLED,但是如果您使用MajorUpgrade元素,它将设置一个名为WIX_UPGRADE_DETECTED的属性。

http://wixtoolset.org/documentation/manual/v3/xsd/wix/majorupgrade.html

这意味着对话框中的条件将是:

不是WIX_UPGRADE_DETECTED

如果要取消显示对话框。您不想要PATCH,因为您根本没有做任何与补丁有关的事情。