2014-05-06 47 views
1

我开发了一个应用程序,它是一个32位和64位格式。这些应用程序也需要相应的注册表项。我使用WiX将这些作为单独的包提供给32位和64位。创建一个单一的MSI安装程序

现在我的要求是创建一个安装程序,它根据操作系统配置安装组件。我尝试使用Bootstrapper捆绑我的软件包。

我的引导程序的代码看起来如下:

<Bundle Name="Bootstrapper" Version="1.0.0.0" Manufacturer="MYCOMPANY" UpgradeCode="b24f74ca-883c-4572-9479-37d92d733aa0"> 
    <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" /> 
    <Chain> 
    <ExePackage Id="source1" Compressed="yes" PerMachine="yes" SourceFile="32\Sample.exe" InstallCondition="Not VersionNT64" /> 
    <ExePackage Id="source2" Compressed="yes" PerMachine="yes" SourceFile="64\Sample.exe" InstallCondition="VersionNT64" /> 
    </Chain> 
</Bundle> 

我的引导程序的输出是微星。当我运行MSI时,我在详细日志中获得MainEngineThread is returning 1620

请建议如何捆绑两个EXE以获得单个MSI软件包。

+0

[Wix安装程序捆绑软件生成损坏的“msi”]的可能重复(http://stackoverflow.com/questions/19134807/wix-installer-bundle-produces-corrupt-msi) –

回答

0

错误1620不是特别讨厌的 - 它只是意味着它无法打开MSI文件,最简单的解释是您的目录结构不正确,exe文件调用MSI安装的位置不正确或MSI文件的名称。

相关问题