在Burn管理引导程序中指定WiX中软件包的INSTALLLOCATION



我有一个WiX 3.6捆绑包(使用Burn)和管理的引导程序,安装了几个MSI包。一些软件包安装到一个公共位置(C:program filesMyApp)。

我想让用户选择安装位置在托管引导程序应用程序(c# WPF,特别是因为应用程序是大的安装;大约1 GB)。我如何为我的bundle中的每个MSI包指定INSTALLLOCATION ?

为每个MsiPackage使用MsiProperty子属性来指定INSTALLLOCATION=[BurnVariable]。然后使用引擎。

例如,在你的bundle中设置:

<Bundle ...>
    <Variable Name='BurnVariable' Value='bar' />
    ...
    <Chain>
        <MsiPackage Source='pathtoyour.msi'>
            <MsiProperty Name="INSTALLLOCATION" Value="[BurnVariable]" />
        </MsiPackage>
    </Chain>
</Bundle>    

参见FireGiant对这个主题的解释。

然后在managed bootstrapper中,你可以做类似的事情:

Engine.StringVariables["BurnVariable"] = "C:program filesMyApp";

相关内容

  • 没有找到相关文章

最新更新