Просто решение:трябва да инсталирате Oracle клиента според платформата (x64 на x64 машина). Причината е, че вашето .NET приложение е много вероятно да бъде изградено в конфигурация AnyCPU, което означава, че ще работи като x64 приложение на x64 платформа. След това може да зарежда само x64 собствени библиотеки...
Имайте предвид, че когато става въпрос за Oracle, обичам да използвам Oracle Instant Client :
- Не е нужно да инсталирате нищо на целевите машини (включително кутии за разработка!).
- Можете да се уверите, че вашето приложение ще работи с конкретния клиент, който сте избрали (версия, x86/x64).
- Можете дори лесно да накарате няколко приложения да работят с различни клиентски версии на един и същи компютър.
- Като недостатък това добавя значителна тежест към вашето приложение (~19Mb минимум).
Проверете Какъв е минималният клиентски отпечатък, необходим за свързване на C# към база данни на Oracle? за повече информация.
Във вашия конкретен случай препоръчвам да настроите проект на Visual Studio, който ще работи както на x86, така и на x64 машини:проверете публикацията в моя блог Oracle Instant Client във Visual Studio . След това ето насоки за как да конфигурирате WiX пакет за Oracle Instant Client насочени към x86 или x64 машини. Ако използвате друга стратегия за внедряване, просто се уверете, че изпращате правилния клиент според целевата платформа.