Я установил Informix Client SDK на свой ПК (32 бит) и на сервер. Я мог легко создать соединение ODBC на своем ПК, но на Windows 2003 и 2008 (64 бит) я не могу.
Я не знаю, есть ли 64-битный SDK; возможно, проблема в этом. Но я не нашел, что делать.
Мне нужно использовать ODBC, так как использование SDK само по себе завешивает IIS, исогласно этому посту, решение — использовать ODBC.
Спасибо
решение1
Я нашел путь.
Проблема была в том, что сервер 64-битный, а моя рабочая станция 32-битная.
Приложение IIS является 32-разрядным, поэтому соединение ODBC также должно быть 32-разрядным.
Чтобы получить доступ к 32-битному ODBC в 64-битной Windows, необходимо выполнить c:\windows\syswow64\odbcad32.exe
вместо c:\windows\system32\odbcad32.exe
.
Теперь я могу добавить подключение к данным для Informix.
Надеюсь, это кому-то поможет.
ОБНОВЛЯТЬ:это не работает с Windows Server 2008 :(
решение2
64-разрядная версия Windows (все версии) поддерживает как 32-разрядные, так и 64-разрядные исполняемые файлы и библиотеки.
Разрядность приложения, потребляющего ODBC, определяет разрядность драйверов, которые оно может использовать. 32-разрядный IIS требует 32-разрядных драйверов ODBC, 32-разрядного Client SDK. 64-разрядный IIS можно настроить для работы в 32-разрядном режиме, в этом случае ему потребуются 32-разрядные драйверы ODBC, 32-разрядный Client SDK. В 64-разрядном режиме по умолчанию 64-разрядный IIS требует 64-разрядных драйверов ODBC, 64-разрядного Client SDK.
32-битные драйверы ODBC настраиваются с помощью 32-битного администратора ODBC. В 64-битной Windows это C:\Windows\SysWoW64\odbcad32.exe
. В 32-битной Windows это C:\Windows\System32\odbcad32.exe
.
64-битные драйверы ODBC настраиваются с помощью 64-битного администратора ODBC. В 64-битной Windows это C:\Windows\System32\odbcad32.exe
. В 32-битной Windows этого не существует.
Системные DSN будут лучшим выбором почти во всех случаях. Пользовательские DSN редко являются лучшим выбором.
В общем случае вам нужна последняя версия Informix CSDK независимо от версии целевого экземпляра Informix. Учитывая, что целевой экземпляр Informix не находится на той же машине, что и CSDK, разрядность CSDK и целевого экземпляра может, но не обязательно, совпадать.