2013-10-09 52 views
0

嗨,大家好,我正在使用wix来安装我当前的应用程序,它成功安装了所有东西,安装程序的初始版本在安装程序中有NeverOverwrite =“yes”,但是在未来的版本中我意识到我可以每次覆盖它,但是当我在未来版本的安装程序中删除NeverOverwrite属性时,它不会覆盖配置。我是否必须更改GUID或进行重大升级以获取配置文件以使用最新版本的安装程序进行更新?Wix不覆盖我的app.config

+0

此链接可能会有帮助 - http://stackoverflow.com/questions/2441651/wix-overwrites-config-files-during-setup-how-can-i-avoid-this – HappyLee

回答

1

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

App.config文件与特定的可执行程序集相关联,如果未以任何方式增加其版本号,它们将不会在安装计算机上更新(因为安装程序未检测到版本号中的更改)。

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

+0

我猜你可以使用'RemoveFile'元素(Component的子元素),它与手动编辑Orca中的msi具有相同的效果。我还没有尝试过。 –

+0

Windows安装程序在文件之间没有看到任何关联,除非它们位于相同的组件中。程序集中的所有文件都应该位于同一个组件中。 (无论如何,大多数程序集只有一个文件。)对于app.config文件,请参阅此[问题](http://stackoverflow.com/q/3203421/2226988)。 –