如何在WiX中使用XmlConfig编辑元素?

时间:2013-05-20 16:23:34

标签: xpath wix wix-extension wix3.7

如何使用WiX 3.7中的XmlConfig编辑xml元素的值?

我想编辑一下:

<root>
  <ele1/>
<root>

到此:

<root>
  <ele1>aValue</ele1>
</root>

XmlConfig Name属性的文档包括:“不设置此属性会导致设置元素的文本值。”但我发现没有使用或省略此属性的组合,这会改变现有元素的值。

此示例导致异常(错误0x80004005:无法创建子元素):

<util:XmlConfig
  Id          = "X.File.10"
  ElementPath = "//root/ele1"
  Value       = "[A_VALUE]"
  Action      = "create"
  Node        = "element"
  On          = "install"
  File        = "[#F.File]"
  Sequence    = "10" />

省略Action属性或使用VerifyPath和/或Name的组合可防止错误发生,但导致无法编辑文件或复制(不编辑)ele1元素。

在重新添加之前尝试删除该元素或根,导致不对该文件进行编辑。

1 个答案:

答案 0 :(得分:3)

元素将节点值更改为

  <util:XmlConfig
  Id          = "X.File.10"
  ElementPath = "//root/ele1"
  Value       = "[A_VALUE]"
  Action      = "create"
  Node        = "value"
  On          = "install"
  File        = "[#F.File]"
  Sequence    = "10" />