在64位Windows 7上使用32位版本的ODBC?

9

我正在使用 Visual Basic 6 编写的应用程序和 ODBC 存在问题(因此是32位)。似乎 VB6 的 ODBC 库与 Windows 7 的64位 ODBC 不兼容。

返回的错误代码为 -2147220992,并且它对不兼容的体系结构进行了混乱的描述。

我可以安装32位版本的 ODBC 吗?还有其他替代方案吗?


DB供应商应提供适当的32位或64位驱动程序,没有理由为何32位驱动程序不能在Windows 7 64位上运行。 - Matt Wilko
3个回答

23

使用32位ODBC管理器添加您的DSN:

C:\ Windows \ SysWOW64 \ odbcad32.exe

这样应该能够看到32位ODBC驱动程序。


2
您需要使用32位版本的ODBC。在同一进程中不能混合32位和64位代码。
然而,那可能不是您的问题。我认为该错误代码是CONNECT_E_NOCONNECTION,可能有各种原因导致出现这个错误,不一定是由于32/64位驱动程序问题引起的。例如,您是否使用32位管理员工具定义了ODBC连接(DSN)?
最后,我建议您引用精确的错误消息,而不是使用诸如“关于不兼容体系结构的胡言乱语”之类的短语。精确的信息将有助于跟踪问题。

0
如上所述:
C:\windows\SysWow64\odbcad32.exe 是ODBC管理员32位版本的位置。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接