Oracle Visual Studio dev на x64 box, нацеленный на x86, ошибка неверного формата - PullRequest
0 голосов
/ 03 февраля 2011

Я пишу службу Windows, которая должна выполнить вызов к базе данных Oracle.У меня есть целевая среда для .Net 2.0 и x86 для компилятора.Я ссылался на файл Oracle.DataAccess.dll на моем клиенте 11.2.0 для оракула.Если я копирую его в GAC, он отображается как архитектура x86.

Теперь, когда я пытаюсь скомпилировать сервис, я получаю сообщение об ошибке «Попытка загрузить программу с неверным форматом».Он отображается как в файле resx службы, так и в файле resx ServiceInstaller.

Это происходит независимо от того, нацелен ли я на платформу x86 или x64.Также независимо от настройки DLL для копирования локально или нет.Есть идеи, что не так?

1 Ответ

0 голосов
/ 09 февраля 2011

ODP.NET управляется не полностью, поэтому он вызывает 32-разрядные неуправляемые вспомогательные библиотеки DLL (если вы установили 32-разрядный ODAC) или 64-разрядные неуправляемые вспомогательные библиотеки DLL (если вы установили 64-разрядный ODAC).

Итак, во-первых, вам нужно правильно установить целевой объект, а затем убедиться, что выбран правильный вариант DLL-библиотеки Oracle.

В этом случае вы выбрали x86 (32-битный), которыйозначает, что вам также необходимо установить 32-разрядный ODAC и убедиться, что вы не ссылаетесь на 64-разрядные библиотеки Oracle по ошибке.

Кристиан Шей
Oracle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...