扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
事实上,所有的ODBC数据源名都存放在Windows系统的注册表中。如果你知道注册表中正确的项值,你就可以通过.NET Framework类库提供的注册表类来读取该项值下的所有DSN列表。
所有ODBC数据源名都存放在Windows注册表下的:LocalMachine\ODBC\ODBC.INI\ODBC Data Sources(系统DSN)和CurrentUser\Software\ODBC\ODBC.INI\ODBC Data Sources(用户DSN) 键值中。
Imports Microsoft.Win32 ''引用名字空间
下面的源代码是演示读取ODBC DSN列表内容并加入到ListBox控件中。来测试这段代码,建立一个Windows 应用程式,添加一个ListBox控件到窗体表单中,并将ReadODBCDSNs方法加到程式代码中。然后,可用一个命令按钮的单或双击事件或用窗体的导入事件来引用这个方法。
Private Sub ReadODBCSNs()
Dim str As String
Dim rootKey As RegistryKey, subKey As RegistryKey
Dim dsnList() As String
rootKey = Registry.LocalMachine
str = "SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources"
subKey = rootKey.OpenSubKey(str)
dsnList = subKey.GetValueNames()
ListBox1.Items.Add("System DSNs")
ListBox1.Items.Add("================")
Dim dsnName As String
For Each dsnName In dsnList
ListBox1.Items.Add(dsnName)
Next
subKey.Close()
rootKey.Close()
''Load User DSNs
rootKey = Registry.CurrentUser
str = "SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources"
subKey = rootKey.OpenSubKey(str)
dsnList = subKey.GetValueNames()
ListBox1.Items.Add("================")
ListBox1.Items.Add("UserDSNs")
ListBox1.Items.Add("================")
For Each dsnName In dsnList
ListBox1.Items.Add(dsnName)
Next
subKey.Close()
rootKey.Close()
End Sub
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者