ODBC on 64 bit System
Keywords: ODBC on x32 x64 64 32 bit platform system ODBC32 odbcconf.exe
WinBatch is a 32 bit application. The current version of WinBatch has been thoroughly tested on 64 bit platforms. However, Because the ODBC Extender
is compiled as a 32 bit DLL, it acts as a 32 bit App. All of the ODBC operations are treated as 32 bit operations on 64 bit platform.
The ODBC Extender would have to be compiled as a 64 bit Dll in order to handle 64 bit DSNs. That is not likely to happen any time soon.
It's important to understand which kind of DSN you have. On an 64 bit system, you can create an ODBC connection(DSN) on the 32-bit side of the system or
on the 64-bit side of the system. 32-bit applications will only see ODBC connections created in the 32-bit side, and 64-bits applications will only see
ODBC connections from the 64-bit side. Each kind of application has its own registry.
To setup DSN for 32-bit application you must use either : the ODBC Extender function qConfigData or %WINDIR%SysWOW64odbcad32.exe
and for 64-bit application you must use: %WINDIR%System32odbcad32.exe
I have a winbatch script that I use to quickly defined new ODBC connection(s) on a Windows Server. So far everything is working just as expected on
x32 platform but when I am executing the script on x64 platform then none of my ODBC connections are visible when using the standard Windows ODBC
control panel. I have checked the registry and there is no trace of my conection(s) but when looking at the ODBC.INI then I can se my connections
I can also see my connections when using the ODBC32 control panel. Then what can I do to have my ODBC connection(s) defined and visible when using the
standard (x64) ODBC control panel? Obvioulsy Winbatch by default is not using the x64 ODBC management API...?
Sorry the ODBC Extender is 32 bit extender and doesn't currently support 64 bit ODBC operations. We do not currently offer 64 bit version of our extenders.
I have hundreds DNSs and I wrote a small winbatch program to automatically add these DSNs to my servers. Any idea on what to do with a x64 system?
Because the ODBC Extender is compiled as a 32 bit DLL, it acts as a 32 bit App. All of the ODBC operations are treated as 32 bit operations on 64 bit platform.
The ODBC Extender would have to be compiled as a 64 bit Dll in order to have the qConfigData create 64 bit DSNs. That is not likely to happen any time soon.
If you must create 64 DSNs you will need to find a workaround...
Article ID: W17585
Filename: ODBC on 64 bit System.txt
File Created: 2017:07:28:12:58:32
Last Updated: 2009:03:12:07:24:28