我正在创建一个Wix安装程序项目(MyProduct.msi),它应该使用一个WiX合并模块(MergeDesktop.msm),该实体消耗另一个WiX合并模块(MergeCore.msm)。
我能够生成可以使用MergeCore.msm的MyProduct.msi,并且能够从MergeCore.msm定义中复制内容。
虽然我能够生成MyProduct.msi,它消耗MergeDesktop.msm,实习生使用MergeCore.msm文件,但它什么也没有复制。
我在MergeDesktop.msm中使用了Dependency元素来包含MergeCore.msm模块。
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Module Id="MergeDesktop" Language="1033" Version="1.0.0.0">
<Package Id="22c37444-cc56-453c-8906-73413240ae40" Manufacturer="Microsoft" InstallerVersion="200" />
<Dependency RequiredId="MergeCore" RequiredLanguage="1033"/>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="MergeRedirectFolder">
</Directory>
</Directory>
</Module>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="MergeCore" />
<Merge Id="MergeCore" Language="1033" SourceFile="MergeCore.msm" DiskId="1" />
</Directory>
</Directory>
</Fragment>
</Wix>
您能否建议一下处理这种情况的最佳方法。如果需要进一步的信息,请告诉我。
此致 库马尔
答案 0 :(得分:0)
无法在另一个合并模块中使用合并模块。
正确的方法是在构建msi时合并两个模块。 如果您有一个模块与另一个模块的依赖关系,请使用&lt;依赖性&gt;
https://www.firegiant.com/wix/tutorial/upgrades-and-modularization/mergers/