【发布时间】:2015-05-13 02:24:12
【问题描述】:
我试图在安装过程中将值写入 XML 文件,该值来自用户在安装阶段填写的文本字段。 在我的安装程序 GUI 文件中,我有以下 EditField:
<Control Id="LogEdit" Type="Edit" X="45" Y="155" Width="100" Height="18" Property="LOGVALUE" Text="{80}" />
在我的 Product.WXS 中,我添加了一个新属性,如下所示:
<Property Id="LOGVALUE" Secure="yes"/>
<SetProperty Id="LOGVALUE" Value="" After="AppSearch">LogValue</SetProperty>
然后我创建了一个新组件,如下所示:
<Component Id="LogComponent"
Guid="87F682A6-1CC0-4E2D-9882-25D765478F94" Directory='ContentDir' NeverOverwrite='yes' Permanent='yes'>
<File Id="Logconfig"
DiskId="1"
Name="log.xml"
Source="..\bin\log.xml"
Vital="yes"
KeyPath="yes" />
<util:XmlFile Id="SetKey3"
Action="setValue"
ElementPath="/log/appender[\[]@type='log4net.Appender.RollingFileAppender'[\]]/file/@value"
Value="[LOGVALUE]"
File="[#Logconfig]"
SelectionLanguage="XPath"
Sequence="1" />
</Component>
我还在 . 问题是安装后不会将任何内容写入 XML 文件,然而如果我将 Value="[LOGVALUE]" 替换为一些硬编码值,例如 Value=" TEST" 在 util:XmlFile 部分它工作。错误来自哪里的任何想法?
【问题讨论】:
标签: wix windows-installer wix3.7