如何为多个MSI文件构建引导程序?

时间:2013-06-21 13:05:54

标签: wix windows-installer installer burn wix3.7

我遇到了以下问题:使用WiX 3.7我已经构建了一个安装程序,可以创建几个本地化的MSI文件,例如:

..\bin\x86\Release\en-us\myProject.msi
..\bin\x86\Release\fr-fr\myProject.msi
..\bin\x86\Release\de-de\myProject.msi

此外,我创建了一个Burn引导程序项目,该项目应该确保安装了.NET 4.5:

...
<Chain>
    <PackageGroupRef Id="NetFx45Web"/>      
    <MsiPackage SourceFile="$(var.myProject.TargetPath)"></MsiPackage>
</Chain>
...

现在我预计Burn bootstrapper项目会创建:

..\bin\x86\Release\en-us\myProject.exe
..\bin\x86\Release\fr-fr\myProject.exe
..\bin\x86\Release\de-de\myProject.exe

但MsiPackage需要一个文件。

通常可以让Burn项目像我期望的那样工作吗?

如果不是这样,是否可以了解创建的MSI文件的确切名称?我无法硬编码MSI文件名,因为输出名称可能会有所不同。

1 个答案:

答案 0 :(得分:0)

我不认为这是可能的......如果您使用MSBuild或类似的东西,您可以在构建MSI包时构建它。

或者您可以使用一个简单的脚本,该脚本将使用参数-dYOUR_VARIABLE=myProject.msi调用candle.exe。

有关详细信息,请参阅 Working with MSBuild