WiX - 如何防止引导程序自行安装;只安装链式包
Posted
技术标签:
【中文标题】WiX - 如何防止引导程序自行安装;只安装链式包【英文标题】:WiX - How to prevent bootstrapper from installing itself; only install chained packages 【发布时间】:2014-10-29 13:15:17 【问题描述】:我有一个隐藏在程序和功能中的捆绑包:
<Bundle DisableRemove="yes" DisableModify="yes" ...
它将以下内容安装为 Chain
的一部分:
<ExePackage Permanent="yes" ...
<MsiPackage Visible="yes" DisplayInternalUI="yes" ...
ExePackage
是永久的,但 MsiPackage
不是。
问题出在这里:
在我运行引导程序并安装包后,如果我从程序和功能中卸载 MsiPackage
,然后再次运行我的引导程序,它将显示一个 卸载 选项...尽管如此所有非永久性软件包都已被删除的事实。这是为什么?我怎样才能防止这种情况?理想情况下,当我再次启动引导程序时,它应该直接进入带有选项的 UI,以再次安装捆绑包,而无需卸载引导程序。
【问题讨论】:
【参考方案1】:您可以在 MsiPackage 上设置 Visible="yes" 以使其显示在 程序和功能。
您可以通过设置从程序和功能中隐藏捆绑包 DisableRemove="yes" DisableModify="yes"。
更多细节,请检查: Wixtool Burn install and uninstall 2 separated MSIs
【讨论】:
这只会对 ARP 隐藏引导程序,但仍会“安装”。以上是关于WiX - 如何防止引导程序自行安装;只安装链式包的主要内容,如果未能解决你的问题,请参考以下文章
如何在升级过程中运行捆绑包时,如何在WIX(Windows安装程序xml)引导程序项目中将按钮文本更改为“升级”?