我创建了一个visual studio安装项目。我希望此项目将另一个项目的输出安装到用户在安装文件夹组件中给出的路径中。那已经有效了。
现在我希望安装程序检查输出是否已经安装(也许这将适用于注册表?)。如果已安装,则旧app.config中的一些数据应合并到新的app.config中(如连接数据条目)。
有办法做到这一点吗?
我找到了自定义操作,但我项目中的代码似乎没有运行:
http://msdn.microsoft.com/de-de/library/d9k65z2d.aspx
我只是尝试写入配置文件:
string path2Conf = "C:\\Program Files\\Proj\\app.conf";
StreamWriter sw = new StreamWriter(path2Conf);
sw.WriteLine("Hallo1298347645");
但是在安装之后,配置中没有这样的字符串。
编辑:我添加了要安装的自定义操作。
答案 0 :(得分:1)
Visual Studio不支持此功能。此外,您无法通过自定义操作执行此操作,因为Visual Studio安装项目在升级开始之前不支持运行操作。在安装新XML之前,您需要备份原始信息。
如果此问题是显示阻止,解决方案是使用另一个支持XML更新的设置创作工具,或者至少提供对自定义操作的更多控制。
如果您想要免费工具,我建议使用WiX。它有一个陡峭的学习曲线,但它完成了工作。