我有一个Win32应用程序可以建立ODBC连接。我们使用SQLDriverConnect()
连接,它显示一个对话框来选择数据源。在x64版本中,对话框显示并提供了2个不同的32位MS ACCESS驱动程序。当我选择其中之一时,在32位版本中,我会看到一个打开文件对话框来选择.mdb文件。在64位版本中,此时对SQLDriverConnect()的调用返回-1。我可以在我的64位应用程序中使用32位ODBC驱动程序
SQLError()
回报:“[微软] [ODBC驱动程序管理器]数据源名称找不到和未指定默认驱动程序”
是它一般可以使用32位ODBC驱动程序从64位可执行文件?为什么显示这些驱动程序?据我所知,目前还没有64位MS Access OBDC驱动程序。我能做什么?
感谢您的明确答案。我坚信如果ODBC使用COM或不同的接口。但是,当我从64位应用程序调用这些驱动程序时,为什么这些驱动程序由ODBC驱动程序管理器列出? – 2011-04-12 13:14:32
@REDSOFTADAIR它与注册表项有关。微软的描述在这里:http://support.microsoft。com/kb/942976 – jvangeld 2012-03-26 22:36:28