传统上,我的客户端软件通过进入“管理工具”并手动创建新的ODBC连接来强制配置ODBC源。
在安装过程中是否有配置新的ODBC连接?
在相关的说明中,有没有办法捕获现有的ODBC连接以用于此理论过程?
答案 0 :(得分:1)
是的,有。整个ODBC对象存储在注册表中。您只需创建一些注册表设置。
我假设如果您仍在使用ODBC,那么您将无法使用Microsoft Access。以下是Access的一些示例设置。如果您的提供商不同,请告诉我们,我们也会帮助您。
对于这些示例,请说明您的ODBC连接名称是MyODBC。
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources
Key: "MyODBC"
Value: "Microsoft Access Driver (*.mdb)"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC
Key: "FIL"
Value: "MS Access;"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC
Key: "Driver"
Value: "$SYSDIR\odbcjt32.dll"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC
Key: "Description"
Value: "Description you'd like your users to see in Control Panel"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC
Key: "UID"
Value: The Access UserName if any. This is optional.
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC
Key: "DBQ"
Value: The installation directory/YourDB.mdb
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC
Key: "SafeTransactions"
Value: "00000000"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC
Key: "DriverID"
Value: "00000019"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC\Engines\Jet
Key: "Threads"
Value: "00000003"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC\Engines\Jet
Key: "ImplicitCommitSync"
Value: ""
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC\Engines\Jet
Key: "UserCommitSync"
Value: "Yes"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC\Engines\Jet
Key: "PageTimeout"
Value: "00000005"
Section: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyODBC\Engines\Jet
Key: "MaxBufferSize"
Value: "00000800"
当然,您使用的安装程序将确切地确定如何创建这些安装程序。
答案 1 :(得分:1)
我当天使用过nullsoft安装程序,他们有一些示例脚本。
http://nsis.sourceforge.net/Create_an_ODBC_entry_for_a_MS_Access_database http://nsis.sourceforge.net/Check_whether_an_ODBC_entry_exists
基本上你写入正确的值到注册表:HKEY_LOCAL_MACHINE“SOFTWARE \ ODBC \ ODBC.INI \ ODBC Data Sources”
使用打包软件中包含的注册表工具。
你正在使用哪种?什么类型的DB?答案 2 :(得分:0)
回答我自己的问题......
每个ODBC配置文件都位于:
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI
该个人资料包含以下内容:
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\<ODBC PROFILE NAME>]
"Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
"Server"="<ODBC PROFILE DSN>"
"LastUser"="<LAST USER TO ACCESS ODBC (probably for lock)>"