INI消失&NeverOverwrite =“ yes”

时间:2019-03-01 08:40:09

标签: wix

我有以下问题:尽管我将NeverOverwrite ='yes'设置为新版本,但升级后消失了。有人可以帮我解决这个问题吗?

<Feature Id="CompRef03" Title="CompRef" Level="1">
  <Component Id="INIWindowsFolder" Directory="WindowsFolder" Guid="d09921c0-1192-458f-8a3e-88889f56a013" KeyPath="yes" NeverOverwrite="yes" Permanent="yes">
    <File Id="test.INI" Source="test\intest.INI"/>
  </Component>
</Feature>   

1 个答案:

答案 0 :(得分:1)

问题 :不确定到底发生了什么。您没有设置 REINSTALLMODE=amus ,对吗?也许您已经从软件包的版本1中更改了组件GUID? (component GUIDs must remain stable between versions for reference counting to work correctly)。否则,该文件可能会被卸载并重新安装(将文件设置为永久文件时不会发生,但是也许您在第一个软件包中忘记了该文件)。

IniFile元素 :实际上,Ini文件不应作为文件安装,而应作为INI值对的“更改项”安装。换句话说,您定义应在文件中添加,更改,删除等等的条目。在Wix中,您使用IniFile Element来实现此目的。所有合并功能,回滚支持和高级ini文件处理都是免费提供的。您需要做的就是定义在安装过程中ini文件中需要添加或修改的内容。如果它不在第一位,它也会被创建。 Please find more details in this answer。还有here is one more link to IniFile Element usage