Оракул.DataAccess все еще пытается получить доступ к oraops12.dll файлы после удаления

сначала у меня есть клиент 11 и 12 oracle на моей машине. Но когда я пытаюсь использовать 11G версию oracle.dataacess.файл DLL.

Я уже удаляю регистр 12c на regedit и останавливаю сервис и machince.связанный с конфигурацией. но программа была брошена " не удалось загрузить oraops12.файл DLL..".

какой путь этот оракул.dataacess найти конфигурацию для dll? Почему он все еще пытался загрузить oraops12, а не oraops11.

заранее спасибо.

3 ответов


в вашем GAC есть файл политики, который использует тег" bindingRedirect"

политика.2.112.Оракул.Доступа к данным.config

выполните поиск файла (я использую Agent Ransack), затем отредактируйте его.

содержимое файла выглядит так

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
          <assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89B483F429C47342"/>
            <bindingRedirect oldVersion="2.112.2.0-2.112.9999.9999" newVersion="2.121.1.0"/>
        </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration>

по какой-то причине, если вы устанавливаете Oracle 12, попробуйте удалить его (даже используя gacutil.exe/ u), перенаправление привязки остается.

на моей машине, он был в C:\Windows\assembly\GAC_32\Policy.2.112.Оракул.Доступа к данным\2.121.2.0__89b483f429c47342\политики.2.112.Оракул.Доступа к данным.config

он недоступен через проводник, используйте agent ransack, чтобы отследить его, затем щелкните правой кнопкой мыши и откройте его в Редакторе.


У меня просто была эта проблема. Убедитесь, что все папки политики и oracle удалены.папки dataaccess, которые начинаются с 2.12 в обоих c:\windows\assembly и c:\windows\Microsoft.net\assembly - ... 2.11 x означает oracle 11.x и 2.12 x означает Oracle 12.x.


У меня была такая же проблема в Windows Server 2012...

Я решил все дело только в том, чтоРаспространяемый Пакет C++ 2010