2011-04-14 152 views
0

我正在使用NSIS来安装我的应用程序,并且正在尝试提前准备以备将来更新。通常使用ClickOnce,我可以调用Upgrade()方法通过访问先前安装中的设置来更新用户的设置。不幸的是,当使用NullSoft安装程序时,新的配置文件与其他所有文件一起打包,并在安装时覆盖现有文件。升级应用程序并将其与新配置文件合并时,维​​护用户设置的最有效方法是什么?NullSoft安装程序 - 升级应用程序时升级app.config

我的想法到目前为止是将用户的配置文件的副本存储在一个单独的位置,然后在启动时,通过比较程序集版本与配置文件中的设置来检查应用程序是否已升级以前的程序集版本。如果它看起来应用程序已经升级,它会继续以某种方式合并旧配置和新配置,但我不确定什么是最安全/最有效的方式来做到这一点。

回答

0

我的安全升级策略是只将新的元素和属性从新的xml文件添加到原始的。但是,我不会复制新的xml文件,而是使用CSV中的xpath和值列表,该列表将在启动时检查并针对其配置文件执行。