我为我的应用程序设置了WIX安装程序,它正确安装并正确更新,但它重写了我的应用程序和相应的dll中定义的默认用户设置(即在属性 - >设置中定义)和# 39; S。如何让WIX更新应用程序,但不更新用户设置?
答案 0 :(得分:3)
无论是ini,注册表还是xml,概念都很简单。只有安装程序负责安装默认设置。然后在应用程序首次运行时将默认设置复制到用户设置一次。现在,安装程序永远不会损害用户设置,因为它甚至不知道它们的存在。
答案 1 :(得分:0)
属性 - >设置已映射到应用程序的app.config
文件,因此您可以将该特定文件的安装设置为 NeverOverwrite
,这意味着更新不会覆盖.config文件。< / p>
工作示例:
<Component Id="SPECTRAVIEW.WPF.MAINAPPLICATION.EXE.CONFIG" Win64="$(var.Win64)" Guid="89E2C6C0-18FB-428B-A9EE-C2FAB3418CB2" NeverOverwrite="yes">
<File Id="SPECTRAVIEW.WPF.MAINAPPLICATION.EXE.CONFIG" Name="SpectraView.WPF.MainApplication.exe.config" Source="$(var.MainApplication.TargetDir)\SpectraView.WPF.MainApplication.exe.config" KeyPath="yes" />
</Component>