【问题标题】:Wix Not overwriting my app.configWix 不会覆盖我的 app.config
【发布时间】:2013-10-09 22:18:06
【问题描述】:

大家好,我正在使用 wix 安装我当前的应用程序,它成功安装了所有内容,安装程序的初始版本在安装程序中有 NeverOverwrite="yes" 但在未来的版本中,我意识到我可以每次都覆盖它但是当我在未来版本的安装程序中删除 NeverOverwrite 属性时,它不会覆盖配置。我是否必须更改 guid 或进行重大升级才能使用最新版本的安装程序更新配置文件?

【问题讨论】:

标签: c# wix


【解决方案1】:

在执行升级时,安装程​​序仅替换从当前安装更改的程序集和程序集的关联文件。

App.config 文件与特定的可执行程序集相关联,如果它的版本号没有以任何方式增加,则不会在安装机器上更新(因为安装程序检测到版本号没有变化)。

您可以增加与 app.config 文件关联的可执行文件的版本号,或使用 Orca 到 forcefully overwrite app.config。

【讨论】:

  • 我猜你可以使用RemoveFile 元素(Component 的子元素),它与在 Orca 中手动编辑 msi 具有相同的效果。不过我没试过。
  • Windows Installer 看不到文件之间的任何关联,除非它们位于同一组件中。一个程序集中的所有文件都应该在同一个组件中。 (无论如何,大多数程序集只有一个文件。)对于 app.config 文件,请参阅question
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-18
  • 2010-12-27
  • 2011-02-27
  • 1970-01-01
  • 2016-02-12
  • 1970-01-01
  • 2010-10-05
相关资源
最近更新 更多