Исключение 64-битного ODBC

Я получаю следующее исключение ODBC, когда я переместил мою платформу разработки из Windows XP X86 в Windows 7 X64:

ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application

Я уверен, что это означает, что сервер, к которому он подключается, составляет 32 бит, а компьютер, на котором я запущен, составляет 64 бит, а используемый драйвер ODBC - 64 бит.

Приложение, которое я пишу, настроено на запуск в 32-битном режиме, потому что некоторые из сторонних программ, которые мы используем, не совместимы с 64-разрядными версиями.

Я попробовал загрузить 32-битный драйвер и сменить DSN, но он не исправил мою проблему. Я все еще получаю исключение.

Если у кого-то есть ссылки для 32-битных SQL-драйверов или какие-либо идеи о том, как я могу это исправить, изменив проект, я все уши.

Спасибо заранее,

-Jrud -

Ответы

Ответ 1

Похоже, что вы установили 32-разрядный DSN с помощью 64-битного администратора ODBC:

http://msdn.microsoft.com/en-us/library/ms712362(VS.85).aspx

Попробуйте использовать этого администратора ODBC:

C:\Windows\SysWOW64\odbcad32.exe

Ответ 2

Если вы наберете ODBC из меню Пуск → Поиск программ, в нем будут перечислены только 32-разрядные администраторы ODBC, а не 64-битная консоль. Microsoft скрывает 64-битный администратор от поиска.