WIX捆绑创作

时间:2013-04-30 08:31:48

标签: wix

我试图创建一个拥有和执行它的MSI。使用WIX中的Bundle选项。这样做会导致错误。有人可以帮我解决这个问题。以下是代码:

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"  
     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
  <Bundle Version="1.0.0.0" UpgradeCode="7AE2E358-B5A0-44B1-9B29-FDD275992993">
    <Chain>
      <ExePackage Id="Netfx4Full" Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes" 
                  SourceFile="ca\dotNetFx40_Full_x86_x64.exe"              
                  DownloadUrl="http://go.microsoft.com/fwlink/?LinkId=164193"            
                  DetectCondition="Netfx4FullVersion AND (NOT VersionNT64 OR Netfx4x64FullVersion)" />
    </Chain>
 </Bundle>

错误

  

错误LGHT0089:找到多个输入部分“{A1B42CCE-8AFE-11E2-AC8C-B3456288709B}”和“{8E644424-3113-462E-9197-32DF7​​40AEB78}”。单个目标中只能有一个输入部分。

1 个答案:

答案 0 :(得分:8)

该错误表示您的项目正在构建包含多个元素的文件:ProductModulePatchPatchCreation,{{1} }。在您的情况下,听起来您已将具有Bundle元素的文件添加到已具有Bundle元素的项目中。今天的WiX工具集不支持这种功能。您需要将Product元素放在单独的项目中。

因此,在创建引导程序和MSI时,您将拥有两个.wixproj文件。第一个.wixproj将包含您的Bundle信息。第二个.wixproj将包含您的Product信息,并具有对第一个.wixproj的项目引用,以便构建顺序正确。