我正在尝试使用WiX进行安装,我需要使用自定义WiX对话框的条目修改配置文件(不是XML或INI)。
这样做有好办法吗?我是否需要制作VB脚本自定义操作?
以下是wxs文件的相关位:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLLOCATION" Name="MyApp">
<Component Id="ap_cfg" KeyPath="yes" Guid="...">
<File Id="CONFIGFILE" Source="myConfig.cfg" />
</Component>
</Directory>
</Directory>
</Directory>
答案 0 :(得分:2)
搜索&amp;中没有内置版本。在Wix中替换构造,您需要编写自定义操作 我建议您使用DTF代替使用VBScript,这将使您能够在.net中编写自定义操作并在Visual Studio下对其进行调试。
答案 1 :(得分:2)
所以你想安装配置文件,在安装过程中动态修改它吗?
最好在原生/非托管代码(如C ++)中编写自定义操作,以读取各种MSI属性并将其写入配置文件。不要以任何速率安装带有密钥路径的文件,否则一旦修改它就会与原始哈希不匹配并将被修复。最好只从二进制表或其他东西写出“默认”配置,然后修改它,这样Windows安装程序就不关心你用它做什么。
我不建议您使用托管代码进行自定义操作,使用C ++并且您将为自己节省一些麻烦很多的麻烦。 WiX工具集源代码中有一些很好的示例可以帮助您入门。
最后,在您认为使用VBScript之前,请先阅读并阅读原因VBScript (and Jscript) MSI CustomActions suck。