Ошибка драйвера Sybase на 64-битном сервере Windows - PullRequest
3 голосов
/ 26 мая 2011

У меня есть консольное приложение, которое отлично работает на 32-битной машине. Но у меня проблемы с запуском исполняемого файла на 64-битном сервере Windows. Я получаю сообщение об ошибке:

Инициализатор типа для «Sybase.Data.AseClient1.AseConnection» вызвал исключение. System.BadImageFormatException. Была предпринята попытка загрузить программу с неверным форматом. в Sybase.Data.AseClient.Unmanaged.AseGetDriverVersion в Sybase.Data.Aseclient1.AseConnection.CheckVersion ().

Кто-нибудь видел эту ошибку?

Обновление: После компиляции в X86 я получаю:

Несоответствие основной версии sybdrvado20.dll. Ожидается основная версия «2». Загруженная версия 1 в Sybase.Data.AseClient1.AseConnection.CheckVerison.

Обратите внимание, что на сервере установлена ​​последняя версия Sybase.

Ответы [ 3 ]

2 голосов
/ 09 марта 2012

Еще проще, скачайте версию x64 http://www.sybase.com/detail?id=1051287&elq=00000000000000000000000000000000

1 голос
/ 26 мая 2011

У меня были похожие проблемы, потому что драйвер 32-битный. так что попробуйте собрать приложение для x86. Вы можете сделать это в свойствах вашего проекта.

0 голосов
/ 10 июня 2015

Что касается ошибки «Несоответствие основной версии sybdrvado20.dll ...», то для меня было решено заменить старую версию sybdrvado20.dll, которая была в папке bin моего приложения (расположенной на сервере), новой. , расположенный в C: \ Sybase \ DataAccess \ ADONET \ dll или C: \ Sybase \ DataAccess64 \ ADONET \ dll. Чтобы проверить версию библиотеки DLL, щелкните файл правой кнопкой мыши, перейдите в «Свойства» и перейдите на вкладку «Сведения».

...