传统上,我的客户端软件通过进入“pipe理工具”并手动创build新的ODBC连接来强制configurationODBC源。
有没有办法在安装过程中configuration新的ODBC连接?
在相关说明中,有没有一种方法可以捕获现有的ODBC连接以用于此理论过程?
我今天使用了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数据源”
使用包装软件中包含的注册表工具。
你在用哪个? 和什么类型的数据库?
就在这里。 整个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"
当然,你使用的安装程序将确定如何创建这些。
回答我自己的问题
每个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)>"