Ще ви дам отговорите от това, през което току-що преминах за Windows Server 2008 R2, която е 64-битова операционна система. Пакетът от приложения от библиотеки, които ми бяха дадени, бяха разработени с помощта на .net 3.5 x86 с по-старите DLL библиотеки и бях блокиран, защото бях инсталирал по-новите x64 клиенти от oracle.
Това, което открих, беше следното:Инсталирайте най-новия x64 клиент от Oracle за Windows Server 2008. Вярвам, че това ще бъде клиентът 2.7.0. Когато изберете инсталацията, уверете се, че сте направили персонализиране и изберете .NET библиотеките. Конфигурирайте вашите tnsnames файлове и тествайте tnsping спрямо вашия източник на данни.
След това, ако работите с 32-битово приложение, инсталирайте същата версия на клиента за 32-битов. Освен това следвайте същата процедура за инсталиране и изберете същия дом.
Когато приключите, ще откриете, че имате едно приложение/продукт с две клиентски директории (Клиент1 и Клиент2).
Ако отидете до директорията windows/assemblies, ще откриете, че имате препратка към Oracle.DataAccess.dll (x2) с една за x86 и една за AMD64.
Сега, в зависимост от това дали имате разработчици или сами разработвате на машината, може да сте добре тук, но ако те използват по-стари драйвери, тогава трябва да извършите една последна стъпка.
Отидете до директорията app\name\product\version\client_1\odp.net\publisher policy\2.x. Тук са включени два файла с правила. използвайте gacutil /i, за да инсталирате Policy.2.111.Oracle.DataAccess.dll в GAC. Това ще пренасочи наследените ODP извиквания на oracle към по-новите версии. Така че, ако някой е разработил с клиента 10g, сега ще работи с клиента 11.
FYI -- Някои може да инсталират най-новия ODP.NET с 2.111.7.20. Самият основен клиент на oracle идва с 2.111.7.0 .. Нямам успех с 7.20, но нямам проблеми с клиента 7.0.