Os drivers ODP.NET consistem basicamente em duas partes. A parte .NET e a parte nativa OCI. A mensagem de erro indica que a parte .NET está funcionando, mas falha ao carregar a parte nativa.
Esses problemas são causas prováveis:
-
Há uma incompatibilidade de versão entre a parte .NET e a parte nativa. Observe queOraOps10.dll
pertence ao Oracle 10g. Portanto, a parte .NET é obviamente da versão 10 e está procurando uma parte nativa para a versão 10.
-
Pode haver uma incompatibilidade de bits. Se a parte .NET estiver sendo executada no modo de 64 bits, ela procurará as DLLs OCI nativas de 64 bits. Em um sistema de 64 bits, o gerenciador de tarefas pode informar se o processo é de 32 ou 64 bits. Processos de 32 bits são marcados com*32
.
-
O registro pode não conter o caminho correto para as DLLs nativas. O ODP.NET recuperará o valor deHKEY_LOCAL_MACHINE\Software\Oracle\ODP.NET\2.xxx.x.x\DllPath
para localizar as DLLs OCI. Observe que o registro é dividido em uma parte de 32 e 64 bits. Dependendo do processo que examina o registro, ele obterá valores diferentes.
É melhor se você adicionar todas as informações disponíveis à sua pergunta. É um sistema operacional de 64 bits? É um processo de 32 ou 64 bits? Qual versão do cliente Oracle foi instalada? Em qual diretório o cliente Oracle foi instalado? Você pode ver as entradas de registro corretas?