如何在创建安装项目后更改连接字符串?

问题描述:

我正在创建一个VB窗体窗体应用程序,工作可以概括为用户填写一些表单,数据保存在sql server数据库中。 现在,我面临的问题是,我必须将此作为安装文件提供给某人,并且该人员将进一步将其分发给不同的用户以在他们的PC上运行,我在考虑的是该代码曾经安装在其他计算机上并执行将因为SQL Server数据库的连接字符串,因为它不会与该计算机匹配而给出错误。我知道,如果一个项目的分配我可以把连接字符串中的app.config和每个用户都可以根据他/她的机器。但改变它作为我给一个安装文件如何解决这个问题如何在创建安装项目后更改连接字符串?

谢谢

+0

如果您不使用单个*数据库。如果你想在每个用户机器上使用db,你可以使用sql compact。 – 2011-06-13 13:18:10

+0

不同的用户不在同一个地方,一旦在伦敦其他的牛津等.. – ConfusedCoder 2011-06-13 13:50:16

+1

是的,我会去一个SQl压缩数据库。它是基于文件的,它位于应用程序文件结构中的本地,因此每个应用程序的连接都是相同的。 http://blogs.msdn.com/b/sqlservercompact/archive/2011/01/12/microsoft-sql-server-compact-4-0-is-available-for-download.aspx – 2011-06-13 18:09:08

这通常是通过安装程序属性来完成:

  • 创造出检索来自用户
  • 该对话框中的每一个控制连接信息可以包含控制文本的安装特性定制对话框
  • 这些特性可用于您的连接,而不是硬编码值

,如果你需要在配置文件中写入这些属性值,你可以尝试使用自定义操作或其他设置创作工具。 Visual Studio安装项目不支持XML文件编写。

每当你想访问机器的名称时指定Str_conn =“Data Source =”& My.Computer.Name &“; Integrated Security = true; Initial Catalog = database_name;”...这将采取每个机器名称正确为您的连接字符串:)

这可以在安装文件中完成。可以添加一个新的屏幕,用户可以自己插入连接字符串。

也可以在安装结束时添加代码以读取可以包含连接字符串的文件(与安装程序捆绑在一起)。

在所有情况下,c.s.应该在app.config中不直接在应用程序代码中。

也许这可能有所帮助:http://www.codeproject.com/Tips/446121/Adding-connection-String-During-Installation