0

我正在使用 Visual Studio 'Votive' 集成开发 WiX 安装程序。

我正在使用创建一个简单的自定义表,<CustomTable>并且我想将它放在一个单独的文件中<Fragment>

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Fragment>
      <CustomTable Id="CustomActionData">
        <Column Id="Id" Category="Identifier" PrimaryKey="yes" Type="int" Width="4" />
        <Column Id="AssemblyFile" Category="Text" Type="string" PrimaryKey="no" />
        <Column Id="TypeName" Category="Text" Type="string" PrimaryKey="no" />
        <Row>
          <Data Column="Id">1</Data>
          <Data Column="AssemblyFile">MyAssembly.dll</Data>
          <Data Column="TypeName">MyAssembly.TypeName</Data>
        </Row>
      </CustomTable>
    </Fragment>
</Wix>

问题是,WiX/Votive 不包含该片段,因为没有任何引用它。没有<CustomTableRef>. <Fragment>但是,它是 的有效父级<CustomTable>,因此必须有一种方法可以让 WiX 包含它。

有什么建议么?如何在片段中引用自定义表?

4

1 回答 1

1

理想情况下会有一个 CustomTableRef 但它不存在。(请随意提出建议。)所以您需要另一个 Element/ElementRef 对。请改用 Property/PropertyRef。

与 WiX 自定义操作一起使用的方式是编译器扩展直接写入自定义表行,因此不需要链接到创作。

于 2014-03-30T22:43:54.853 回答