3

如何让 Wix 在最终的 MSI 中包含没有行的 CustomTable?如果我像这样简单地定义表

<CustomTable Id="MyTable">
  <Column Id="Id" Type="string" Category="Identifier" PrimaryKey="yes"/>
  <Column Id="Root" Type="string"/>
  <Column Id="Key" Type="string"/>
  <Column Id="Name" Type="string"/>
</CustomTable>

Wix 从最终输出中省略了它。

我的 DTF CustomAction 期望它在那里,以便它可以在执行期间向它添加行。

有任何想法吗?

4

1 回答 1

7

感谢这篇文中的评论(顺便说一下,其中有一个非常有用的 DTF 自定义操作示例),我找到了 Wix EnsureTable元素,它可以确保输出中出现一个表格,即使它是空的。

因此,为了使我的示例正常工作,我需要这样做:

<CustomTable Id="MyTable">
  <Column Id="Id" Type="string" Category="Identifier" PrimaryKey="yes"/>
  <Column Id="Root" Type="string"/>
  <Column Id="Key" Type="string"/>
  <Column Id="Name" Type="string"/>
</CustomTable>

<EnsureTable Id="MyTable"/>
于 2010-04-14T20:16:14.583 回答