Wix Managed Bootstrapper:安装 Net framework 并在添加删除程序中添加条目,即使我们取消产品安装
Wix Managed Bootstrapper: Installing Net framework and adding entry in add-remove program even if we cancel product installation
在我的托管引导程序中,我正在打包 Net framework 4.5.1 和 VC Redistributable,如下所示:
<PackageGroupRef Id = "NetFx451Redist" />
<PackageGroupRef Id = "VC_ReDist_120" After="NetFx451Redist" />
<RollbackBoundary />
<MsiPackage Id = "MainProduct"
DisplayName = "$(var.ProductName)"
DisplayInternalUI = "no"
Visible = "no"
Compressed = "yes"
SourceFile = "$(var.MainProduct)"
Vital = "yes"
After = "NetFx451Redist"
>
在 Windows 7 x64 上,Net FW 4.5.1 不存在,通过安装,这将显示 wixstdba 的基本屏幕以安装 .Net 框架,它还会在添加-删除程序中添加一个条目,在完成 Net Framework 并启动我的 msi 包安装之前。
问题:现在完成 Net Framework 4.5.1 安装并启动我的产品包(托管引导程序)后,如果我取消其安装,或者它可能因任何原因而终止error/issue,它在添加-删除程序中留下了条目。如果我尝试从添加-删除程序中 uninstall/change 它,它会再次启动启用安装按钮的托管引导程序安装界面,就好像它是全新安装一样,但总是以错误结束。
如果我取消安装或由于任何 error/issue 从托管界面终止安装,我想从添加-删除程序中删除它的条目。
我的 Bundle 或托管代码中是否缺少某些内容...???
一旦安装了捆绑包的任何部分,Burn 引擎就会在 Add/Remove 程序中注册捆绑包。 .NET 必备包是捆绑包的一部分,因此当 MBAPrereq BootstrapperApplication 安装 .NET 时,捆绑包会在 Add/Remove 程序中注册。无法在您的 Bundle 或 BA 中修改 Burn 引擎的这种行为。一个潜在的功能请求可能是让 Burn 仅在安装非永久包后注册捆绑包。应在 http://wixtoolset.org/issues.
提交功能请求
今天,您可以尝试通过在 BA 中放置逻辑来解决此问题,如果它检测到这种情况,它会在调用 Engine::Exit 之前自动卸载自身。
在我的托管引导程序中,我正在打包 Net framework 4.5.1 和 VC Redistributable,如下所示:
<PackageGroupRef Id = "NetFx451Redist" />
<PackageGroupRef Id = "VC_ReDist_120" After="NetFx451Redist" />
<RollbackBoundary />
<MsiPackage Id = "MainProduct"
DisplayName = "$(var.ProductName)"
DisplayInternalUI = "no"
Visible = "no"
Compressed = "yes"
SourceFile = "$(var.MainProduct)"
Vital = "yes"
After = "NetFx451Redist"
>
在 Windows 7 x64 上,Net FW 4.5.1 不存在,通过安装,这将显示 wixstdba 的基本屏幕以安装 .Net 框架,它还会在添加-删除程序中添加一个条目,在完成 Net Framework 并启动我的 msi 包安装之前。
问题:现在完成 Net Framework 4.5.1 安装并启动我的产品包(托管引导程序)后,如果我取消其安装,或者它可能因任何原因而终止error/issue,它在添加-删除程序中留下了条目。如果我尝试从添加-删除程序中 uninstall/change 它,它会再次启动启用安装按钮的托管引导程序安装界面,就好像它是全新安装一样,但总是以错误结束。
如果我取消安装或由于任何 error/issue 从托管界面终止安装,我想从添加-删除程序中删除它的条目。
我的 Bundle 或托管代码中是否缺少某些内容...???
一旦安装了捆绑包的任何部分,Burn 引擎就会在 Add/Remove 程序中注册捆绑包。 .NET 必备包是捆绑包的一部分,因此当 MBAPrereq BootstrapperApplication 安装 .NET 时,捆绑包会在 Add/Remove 程序中注册。无法在您的 Bundle 或 BA 中修改 Burn 引擎的这种行为。一个潜在的功能请求可能是让 Burn 仅在安装非永久包后注册捆绑包。应在 http://wixtoolset.org/issues.
提交功能请求今天,您可以尝试通过在 BA 中放置逻辑来解决此问题,如果它检测到这种情况,它会在调用 Engine::Exit 之前自动卸载自身。