Los controladores ODP.NET básicamente constan de dos partes. La parte .NET y la parte OCI nativa. El mensaje de error indica que la parte .NET está funcionando pero no puede cargar la parte nativa.
Estos problemas son causas probables:
-
Hay una discrepancia de versión entre la parte .NET y la parte nativa. Tenga en cuenta que
OraOps10.dll
pertenece a Oracle 10g. Entonces, la parte de .NET obviamente es de la versión 10 y está buscando una parte nativa para la versión 10. -
Podría haber una falta de coincidencia de bitness. Si la parte .NET se ejecuta en modo de 64 bits, buscará las DLL OCI nativas de 64 bits. En un sistema de 64 bits, el administrador de tareas puede decirle si el proceso es de 32 o de 64 bits. Los procesos de 32 bits están marcados con
*32
. -
Es posible que el registro no contenga la ruta correcta a las DLL nativas. ODP.NET recuperará el valor de
HKEY_LOCAL_MACHINE\Software\Oracle\ODP.NET\2.xxx.x.x\DllPath
para localizar las DLL de OCI. Tenga en cuenta que el registro se divide en una parte de 32 y 64 bits. Dependiendo del proceso que busque en el registro, obtendrá diferentes valores.
Es mejor si agrega toda la información disponible a su pregunta. ¿Es un sistema operativo de 64 bits? ¿Es un proceso de 32 o 64 bits? ¿Qué versión del cliente Oracle se instaló? ¿En qué directorio se instaló el cliente de Oracle? ¿Puedes ver las entradas de registro correctas?