По данным этого веб-сайта:
http://support.microsoft.com/kb/942976
•32-разрядная версия файла Odbcad32.exe находится в папке %systemdrive%\Windows\SysWoW64. •64-разрядная версия файла Odbcad32.exe находится в папке %systemdrive%\Windows\System32.
Это опечатка? Пути перепутаны?
Обе программы выведут список всех DSN, использующих как 32-, так и 64-разрядные драйверы, но для создания/изменения DSN нам следует использовать соответствующую утилиту?
если у меня 64-битная версия Windows 7, какую версию я использую? Я заметил, что оба этих exe-файла имеют в названии "32", что сбивает с толку и затрудняет понимание.
Обновлять
Я думаю, что документация MS все-таки может быть верной, основываясь на следующем.
Когда я пытаюсь создать новый DSN, ссылающийся на 32-разрядный драйвер IBM DB2, используя System32\Odbcad32.exe (который MS называет 64-разрядной версией утилиты), я вижу это
Когда я запускаю \SysWoW64\Odbcad32.exe (который MS называет 32-разрядной версией утилиты), я вижу следующее:
Обратите внимание, что 32-разрядный драйвер доступен только при запуске версии утилиты, найденной в \SysWoW64\Odbcad32.exe, которую MS называет «32-разрядной версией», хотя она странным образом находится в SysWow64папка. Если я выберу драйвер без 32 или 64 в имени, то позже после создания DSN он отобразится как 64-битный драйвер.
Опять же, похоже, что документация MS может быть верной, но их выбор места размещения утилиты и ее названия весьма странный...
Комментарии?
решение1
По какой-то причине (которой я не знаю) в 64-битной Windows 64-битные файлы хранятся в том же месте, что и их 32-битные эквиваленты в 32-битной Windows (то есть 64-битные программы находятся в "C:\Program Files", а 64-битные системные файлы находятся в "C:\Windows\System32", а 32-битные программы находятся в новых каталогах - "C:\Program Files (x86)" и "C:\Windows\SysWoW64". СогласноВикипедияWoW64 означает «Windows 32-bit на Windows 64-bit».
Драйвер был установлен в правильном месте, просто Microsoft ввела его в заблуждение своим названием.