vb.net 制作安装包数据库配置和读取**.exe.config的问题!

尊敬的各位大牛,你们好:

本人小白实习生一枚,最近PM将一个任务交到我手上,说让我独立完成。至目前为止,大部分工作已经完成,可是还有最后一点,一直卡着过不去。各位同僚前辈们有没有之前做个这方面的任务的,希望您可以不吝赐教!后学晚辈在此感激不尽!

问题描述:

公司给客户做的一个Demo,全部都完成了,现在就剩下安装包的制作,用的是VS自带的打包工具。按照经理的说法,需要在安装的时候动态的配置数据库,这其中就牵扯到一些Customer Action里面的参数:
图片说明

按照网上配置DSN的方法,我先把这些参数取出来,然后写到注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBC.INI 这个目录下面去

图片说明
于此同时,在程序里面还有一个**.ini文件,安装包完成安装的时候,有这个ini文件,程序正常启动;如果没有,程序异常。经理的说法,是当删除这个ini文件里面的配置信息,只留一个DataSource Name的时候,程序也正常启动。
图片说明

从网上找到的答案说是要在**.exe.config这个xml文件里配置一些信息,来实现动态的数据库链接,经理也说我的这个配置文件里缺少配置信息

 <?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>

</configuration>

我的问题是:

ini 、注册表和**.exe.config这个xml应该是什么样的一种关系?

如果要实现从动态的读取数据库配置信息,经过 【 安装界面里提取参数】,【写到注册表】,接下来是什么步骤?如果可以,还希望各位牛人同僚们可以给出稍微具体的步骤。

我也不知道我把问题描述清楚没有,如果各位还有什么不懂或者不清楚的地方,尽情的骚扰我吧~~

前辈们,牛人们,谢谢你们了!

ini、注册表、app.config都是一个性质的东西,就是保存程序的一些东西,有一个就够用了。
写到注册表后,自然是用的时候读出来啦。
至于什么时候读ini,什么时候读注册表,什么时候读app.config,就要看你的需求了。编译后app.config会写到exe.config里的。

主要还是【从动态的读取数据库配置信息】,你看一下
1.Configuration.ConfigurationManager.ConnectionStrings这个方法就知道了。
<?xml version="1.0" encoding="utf-8" ?>


  1. Dim strConnStr As String = System.Configuration.ConfigurationManager.AppSettings("SqlserverConnString")
    <?xml version="1.0" encoding="utf-8" ?>

    <



居然没发上来,补充下xml内容
1

 <?xml version="1.0" encoding="utf-8" ?>  
<configuration>  
        <add key="SqlserverConnString" value ="Data Source=.;database=;user id=sa,password="/>  
</configuration>  

或者2

 <?xml version="1.0" encoding="utf-8" ?>  
<configuration>  
    <appSettings>  
        <add key="SqlserverConnString" value ="Data Source=.;database=;user id=sa,password="/>  
    </appSettings>  
</configuration>  
   不好意思,第1个又弄错了 - -
     <connectionStrings>
        <add  name="SqlserverConnString"   connectionString ="Server=.;Database=;Uid=;Pwd=" />
     </connectionStrings>

这样的通过Configuration.ConfigurationManager.ConnectionStrings读取或写入配置的连接字符串