Odbc-драйвер версии 2.x, но в Visual Studio используется версия 3.x. Нужно каким-то образом заставить приложение использовать версию 2.x Прямо сейчас возникает ошибка: «Драйвер не поддерживает версию поведения ODBC, запрошенную приложением (см. SQLSetEnvAttr)». - но не находит способа указать приложению использовать другую версию
Попытка установить связь с системой Honeywell. Они не известны обменом данными - но есть ODBC-драйвер, написанный кем-то лет 15 назад. При работе на сервере Windows 2003 и компиляции (на том же сервере) в Visual Studio 2005 приложение работает. То же приложение работает на другом сервере: не работает. Приложение скомпилировано (x86) на любой другой машине: Не работает ни на старом сервере, ни на новом.
Не находит свойства или методы в System.Data.Odbc.OdbcConnection
, чтобы установить используемую версию ODBC.
На данный момент вы не получаете «ошибку» при запуске приложения: оно подключается к dsn, и пользователь аутентифицируется. (Смена логина или пароля выдает ошибку) - но данные не загружаются.
Выполнение трассировки вызовов драйвера ODBS дает:
DIAG [IM006] [Microsoft] [Диспетчер драйверов ODBC] Сбой SQLSetConnectAttr драйвера (0)
DIAG [01000] [Microsoft][Диспетчер драйверов ODBC] Драйвер не поддерживает версию поведения ODBC, запрошенную приложением (см. SQLSetEnvAttr). (0)
....
DIAG [IM006] [Microsoft] [Диспетчер драйверов ODBC] Сбой SQLSetConnectAttr драйвера (0)
DIAG [HY096] [Honeywell] [Драйвер ODBC] Тип информации вне допустимого диапазона (1043)
....
DIAG [HYC00] [Honeywell] [Драйвер ODBC] Драйвер не поддерживает (1010)
Итак, поскольку нет более нового драйвера для использования, мне нужно, чтобы мое приложение использовало ODBC 2.x, но оно по-прежнему использует ODBC 3.x.