wix引导程序



我已经使用WPF编写了一个托管wix引导程序。实际的安装步骤需要链接多个msi的.exe和批处理文件。

<Chain>
 <MsiPackage SourceFile="xxx"/>
 <ExePackage Id="Test" SourceFile="..TestBatch.bat" Vital="yes"/>
 <MsiPackage SourceFile="yyy"/>
</Chain>

在执行每个包的过程中,应该显示一条消息(最好来自引导程序UI),指示当前正在执行哪个msi/exe包/批处理文件。简而言之,引导程序中需要ProgressText。我该如何实现这一点?

另一个问题:我不希望所有的msi都打包到bootstrapper.exe中。这是因为:每次更改msi时,我们都希望只发送更新/修改的msi,而不是整个引导程序exe。有办法做到这一点吗?

两个答案,一个建议:

  1. 要在安装MsiPackage期间取回消息,请处理BootstrapperCore.ExecuteMsiMessage事件。那里的事件参数将包含一条消息,其中包含您要查找的数据。

  2. 要配置包的压缩方式,请使用Compress属性。您可以标记整个Bundle/@Compress='no',也可以标记每个包Compress='no'(如果您想这样做,可以标记'yes')。

--

建议:一定要将DetectCondition添加到ExePackages中,这样Burn就会知道ExePackage是否已经存在。

相关内容

  • 没有找到相关文章

最新更新