Installation 使用InstallShield 2011安装程序更改app.config中的连接字符串

Installation 使用InstallShield 2011安装程序更改app.config中的连接字符串,installation,connection-string,installshield-2011,Installation,Connection String,Installshield 2011,我正在创建InstallShield 2011基本MSI安装程序项目 我正在尝试根据安装程序中数据库登录对话框中的用户选择更改app.config中的连接字符串。如何将这些连接字符串设置应用于我要安装的windows应用程序的app.config中的连接字符串条目 XML文件更改是正确的起点。由于更改连接字符串是一项常见的任务,我希望有一个最佳实践来完成这项任务 -编辑- 主要有两个困难: 如何在InstallShield中引用将在生成时创建的文件?App.config被复制到MyAppName

我正在创建InstallShield 2011基本MSI安装程序项目

我正在尝试根据安装程序中数据库登录对话框中的用户选择更改app.config中的连接字符串。如何将这些连接字符串设置应用于我要安装的windows应用程序的app.config中的连接字符串条目


XML文件更改是正确的起点。由于更改连接字符串是一项常见的任务,我希望有一个最佳实践来完成这项任务

-编辑-

主要有两个困难:

如何在InstallShield中引用将在生成时创建的文件?App.config被复制到MyAppName.config。我不想再次将应用程序名称硬连接到此处的设置中

配置文件中的连接字符串由实体框架使用,因此包含的信息比InstallShield中的数据库选择提供的信息要多。如果我只想更改连接字符串的服务器和InitialCatalog属性,我必须修补配置文件元素中的属性。看起来XML文件更改只支持替换整个元素或属性


就我所记得的,这个设计就是为了这个目的。定义XPath和元素/属性值时,可以将用户的选择作为属性值。对我来说,这是InstallShield的一个领域,它工作得非常好,正如前面所述。

XML文件更改是正确的起点。但我仍然有一些具体的困难。请参阅我编辑的问题。找到解决方案了吗?我最后为服务器和InitialCatalog添加了两个附加元素,可以用XML文件更改替换它们。之后,我根据运行时的需要组装连接字符串。不漂亮,但很管用。