如何刻录检测它需要自行卸载?

时间:2014-10-29 13:29:31

标签: .net wix wix3.7 bootstrapper burn

Burn,WiX引导程序应用程序在运行时会进行检查以确定是否需要卸载。假设我有以下包Chain

<ExePackage Permanent="yes" ...
<MsiPackage Visible="yes" DisplayInternalUI="yes" ...

刻录如何确定是否应该提供卸载对话框?它是如何知道它(引导程序本身)是否已安装?在我运行引导程序并安装了软件包之后,如果我从程序和功能中卸载MsiPackage,然后再次运行我的引导程序,它将显示一个卸载选项...尽管所有非永久软件包都已被删除。显然,它必须留下一些东西来检测只是在某个时刻安装了引导程序。

1 个答案:

答案 0 :(得分:1)

知道了,它检查了HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{The GUID for this Particular Installation}HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{The GUID for this Particular Installation}中的注册表项。

要了解引导程序的{The GUID for this Particular Installation}是什么,请查找属性为BundleUpgradeCodeREG_MULTI_SZ)的元素,该元素等于程序包的升级代码。