使用WiX 3.6,我有一个自定义的.NET BootstrapperApplication,其中包含链中的.Net 4.0 Web安装程序:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Bundle Name="$(var.BundleProductName)"
Version="$(var.BundleVersion)"
...
Compressed="yes" DisableRepair="yes" >
<BootstrapperApplicationRef Id="ManagedBootstrapperApplicationHost" >
<PayloadGroupRef Id="MyInstallerUILibs" />
</BootstrapperApplicationRef>
<Chain>
<!-- Install .Net 4 Full -->
<PackageGroupRef Id="NetFx40Web" />
<!-- Install my packages -->
<PackageGroupRef Id="MyPackages" />
</Chain>
</Bundle>
</Wix>
当我在未安装.net 4的计算机上运行安装程序时,会提示 用户按预期下载并正确安装.net 4.0之前 显示我的自定义UI。到目前为止,非常好。
在我的界面中,我想让用户选择取消/退出 在安装任何其他软件包之前安装。例如,如果是用户 并不同意我们的EULA。
我看到的是:如果.net 4.0安装运行并完成,那么
在我的BootstrapperApplication中,我在执行任何计划/应用之前退出
操作,捆绑包仍显示在Windows“添加/删除程序”菜单中。我&#39;已经
试着打电话给Engine.Quit((int) ActionResult.NotExecuted)
和
Engine.Quit((int) ActionResult.UserExit)
,但似乎都没有阻止它
ARP列表。
注意:.net 4安装也会按预期显示在APR列表中。
我的问题是: 向安装捆绑软件的WiX引擎发出信号的正确方法是什么 停止并且捆绑包本身不应显示在“添加/删除程序”列表中?