Wix CustomAction仅在基本模式下运行
我的wix 3.5安装程序可以下载并在正常安装情况下运行。我还使用相同的msi进行更新,并从应用程序本身内部使用Wix CustomAction仅在基本模式下运行,wix,windows-installer,Wix,Windows Installer,我的wix 3.5安装程序可以下载并在正常安装情况下运行。我还使用相同的msi进行更新,并从应用程序本身内部使用/qb(基本安静界面)调用msiexec 到这里一切都好。在正常的设置中,我有一个选项,可以在安装后启动应用程序(摘自教程),并且运行良好 <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Start $(var.AppName) $(var.ExeVersion) now..." /> <Prope
/qb
(基本安静界面)调用msiexec
到这里一切都好。在正常的设置中,我有一个选项,可以在安装后启动应用程序(摘自教程),并且运行良好
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Start $(var.AppName) $(var.ExeVersion) now..." />
<Property Id="WixShellExecTarget" Value="[#$(var.AppName).exe]" />
<CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes" />
这也没问题,不过很明显,现在我的应用程序是自动启动正常(非qb)设置。为了克服这个问题,我想我需要检测我在哪个UILevel
中,并且只在INSTALLUILEVEL\u BASIC
中运行自定义操作
因此,我的问题是:如何在
InstallExecuteSequence
或CustomAction
中检测UILevel
?或者有没有办法在Wix中仅在安静的基本模式下运行CustomAction。您应该通过UILevel=3来调节自定义操作我知道,但如何将其精确调节到UILevel 3?您可以在“custom”元素的文本中指定条件。感谢您的提示。以下是供参考的工作示例:UILevel=3
<InstallExecuteSequence>
<RemoveExistingProducts After="InstallFinalize"/>
<Custom Action="LaunchApplication"
After="RemoveExistingProducts"/>
</InstallExecuteSequence>