5

我试图创建一个包含和 exe 的 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}”。单个目标中只能存在一个条目部分。

4

1 回答 1

11

该错误表明您的项目正在使用包含多个以下元素的文件进行构建:Product, Module, Patch, PatchCreation, Bundle。在您的情况下,听起来您将带有元素的文件添加Bundle到已经有Product元素的项目中。今天的 WiX 工具集中不支持这一点。您需要将Bundle元素放在单独的项目中。

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

于 2013-04-30T14:10:58.343 回答