我有准备安装的MSI文件。它包含一个自定义UI,也可以从用户收集数据。作为安装的一部分,如果缺少
,我想安装以下内容根据我的经验,bootstrapper也应该包含UI。如何使用bootstrapper仅启动先决条件阶段,然后继续安装MSI UI?
答案 0 :(得分:20)
如果您使用Visual Studio安装和部署项目引导程序(GenerateBootstrapper
相关的东西),那么它将在安装先决条件后显示您的MSI UI。这是一个非常简单的引导程序。
我相信您正在考虑的自定义引导程序UI是WiX v3.6 +中的新Burn功能。 Burn功能更强大,可以为多个链接包(.exe或.msi或.msp或.msu)创建单一,无缝的用户体验。使用Burn,您可以创建一个非常自定义的UI,它不会显示链接包中的任何UI。或者,您可以让Burn显示MSI UI。基本上,Burn是高度可配置的,但确实需要一些额外的工作(因为WiX工具集不提供开箱即用的所有)。
要在基于刻录的Bundle
中运行时显示MSI用户界面,您需要将DisplayInternalUI='yes'
添加到要显示的MsiPackage
元素中。例如:
<Chain>
...
<MsiPackage ... DisplayInternalUI='yes' />
</Chain>
如果您使用的是wixstdba(非常常见),它将显示它的UI,直到安装.msi包时为止。然后,.msi包UI将弹出顶部并返回到wixstdba UI以完成Bundle
安装。如果要更改基于Bundle的UI的显示方式,可以提供自己的Bootstrapper应用程序。