wixlib中的二进制记录

时间:2018-07-02 20:34:42

标签: wix wixlib

我的每个安装程序之一都使用某些临时exe和dll。在我的WiX项目中,我可以将它们放在Binary表中。由于它们已在所有项目中共享,是否可以将它们放入wixlib?语法是什么。

我正在使用PropertyRef属性对属性进行类似的操作。没有相应的BinaryRef属性可以对Binary表执行相同的操作。

1 个答案:

答案 0 :(得分:1)

  

没有相应的BinaryRef属性可以对   二进制表。

对于没有相应* Ref元素的元素,可以使用以下解决方法:

  • 在片段中创建一个空的ComponentGroup元素(有效的WiX代码)。
  • 在要引用ComponentGroupRef的位置插入Fragment元素。这会提取Fragment的全部内容,而不仅仅是ComponentGroup

示例:

<Fragment>
    <ComponentGroup Id="MyBinaries"/>
    <Binary Id="Binary1" SourceFile="Files\Binary1.xyz"/>
    <Binary Id="Binary2" SourceFile="Files\Binary2.xyz"/>
</Fragment>

要从另一个.wxs文件引用MyBinaries:

<Fragment>
    <ComponentGroup Id="SomeComponents">
        <ComponentGroupRef Id="MyBinaries"/>
    </ComponentGroup>
</Fragment>