Esto es lo que hice:

  1. Estoy en Windows XP SP3
  2. Yo ya había Python 2.7.1 instalado.
  3. He descargado instantclient-basic-nt-11.2.0.3.0.zip, descomprimido, y puso en C:\Program Files\Oracle\instantclient_11_2.
  4. He añadido esta ruta de acceso de Windows Path variable de entorno.
  5. He creado una nueva variable de entorno ORACLE_HOME la celebración de este camino como su valor.
  6. He instalado cx_Oracle-5.1.2-11g.win32-py2.7.msi.

Y en la ejecución de los import cx_Oracle todo lo que veo es

Traceback (most recent call last): 
  File "<string>", line 2, in <module> 
ImportError: DLL load failed: This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.

Yo, obviamente, desinstalar /reinstalar cx_Oracle un par de veces, pero nada parece ayudar. Alguien podría por favor proporcionar una idea de cómo solucionar este problema?

ACTUALIZACIÓN

Corrí Dependency Walker y viene con un montón de problemas. Sin embargo, la primera falta .dll (msvcr80.dll es en realidad presente en C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.91_x-ww_0de56c07.

cx_Oracle: ImportError: DLL error de carga: Esta aplicación no pudo

OriginalEl autor RubenGeert | 2013-11-23

12 Comentarios

  1. 16

    OK, lo que finalmente resolvió el problema (no se si todos los pasos son necesarios y ni idea de por qué exactamente esto y sólo esto funcionado hasta ahora):

    • Descargar y descomprimir versión 12 de aquí.
    • Agregar «ORACLE_HOME» como una variable de entorno de Windows y establezca su valor a …\instantclient_12_1, (no la carpeta que lo contiene!).
    • Agregar este mismo camino a la «Camino» variable de entorno.
    • Sólo ahora instalar cx_Oracle.
    No tenía la necesidad de agregar ORACLE_HOME. He extraído el instante cliente c:\Python y luego agregó C:\Python27\instantclient_11_2 la ruta de acceso. Gracias Rubén!
    Solo para agregar algo que acabo de encontrar. Se requiere reiniciar en Windows!
    Yo ya había ORACLE_HOME y cx_Oracle instalado pero no era en el CAMINO. Acabo de añadir %ORACLE_HOME% a la ruta y se comenzó a trabajar. Gracias!

    OriginalEl autor RubenGeert

  2. 9

    Para ayudar a otra gente con el mismo problema:

    Este error dice acerca de 32-64 bits desajuste entre algunos DLL, mientras que la importación del módulo. Las posibilidades son:

    1. Arquitectura diferente de Python y cx_Oracle (menos probable ya que cx_Oracle instalador en Windows advierte que si procede de Python no se encontró).
    2. Arquitectura diferente de cx_Oracle bibliotecas y oci.dll (más probable).

    Tenga en cuenta que cx_Oracle utiliza standart de cliente de Oracle (en OCI nivel), que debe ser instalado en su máquina. Busca oci.dll en varios lugares, incluyendo CAMINO. Si se funda oci.dll de versión incorrecta de cliente aparece el error.

    En caso de que este error compruebe la ruta de la lista en la CAMINO variable de entorno. Es probable que contenga la ruta a la carpeta BIN de la versión incorrecta del cliente de Oracle. Si usted tiene varios clientes, especificar en el CAMINO el apropiado o instalar el cliente adecuado.

    NOTA: ORACLE_HOME no tiene un efecto para cx_Oracle. En mi caso sólo cambiar de RUTA ayudado. Creo que el de Ruben solución funciona porque del punto 3 («Añadir esta misma ruta de «el Camino» a la variable de entorno’).

    Estoy de acuerdo, no se necesita ORACLE_HOME en mi caso. Mi equipo es de 64 bits Win de 64 bits de Python 3.4 ( a través de la Anaconda ), con cx_Oracle instalado a través de Conda pero, a continuación, sólo el dumping que se extrae instantclient en una arbitraria C: ubicación de la unidad y añadiendo que para el PATH (como otros de arriba y de abajo lo he hecho). En ese momento funcionó bien.
    La solución que funcionó para mí. Upvote para usted.

    OriginalEl autor greatvovan

  3. 4

    Estoy usando python35 de 64 bits y oracle express en win 7 (64 bits).
    He instalado cx_Oracle el uso de pip3 (pip3 install cx_Oracle) en lugar de descargar el instalador desde pypi.

    Yo se enfrentó al mismo problema.

    Lo resuelto por la siguientes pautas anteriores, pero en lugar de 32 bits, he descargado la versión de 64 bits de la instantánea de cliente (instantclient-basic-windows.x64-11.2.0.4.0.zip) de http://www.oracle.com/technetwork/topics/winx64soft-089540.html.

    Yo luego extrajo al c:\oraclexe. Y añadió estas variables de entorno

    set ORACLE_BASE=C:\oraclexe
    set ORACLE_HOME=C:\oraclexe\app\oracle\product1.2.0\server
    set PATH=C:\oraclexe\instantclient_11_2;%PATH%

    Y corrió a mi django migrar comandos:

    python manage.py migrar

    Funcionó excelente

    OriginalEl autor Jaya Nandan

  4. 2

    Manera fácil:

    • Asegúrese de que ha instalado cx-Oracle, he cx_Oracle-5.1.3-11g.win32-py2.7.exe
    • Descargar, descomprimir instantclient_12_1 y moverlo a C:\Python27
    • Añadir la variable de entorno C:\Python27\instantclient_12_1
    • Reinicie el equipo

    OriginalEl autor rob

  5. 2

    Mismo ImportError producido para la instalación de:

    • Windows 10 x64
    • De Oracle Instant Client 12_1 x64
    • Python 2.7.11 x64
    • cx_Oracle cx_Oracle-5.2-12c.ganar-amd64-py2.7

    Lo resuelto copia msvcr100.dll archivo en <oracle_instant_client_dir>

    OriginalEl autor Sergey Stepanov

  6. 2

    Tenido este problema también, y parece importar cx_Oracle (al menos a partir de 5.1.2) se producirá un error (con el mismo error) si usted tiene cualquiera no válido/no se puede alcanzar rutas de acceso UNC en frente de Oracle en la variable de entorno PATH.

    La fijación de la ruta de acceso UNC (que no estaba relacionada con Oracle) resuelto el problema.

    ¿Qué es una ruta de acceso UNC?
    Una ruta de acceso UNC es un camino que no incluye una letra de unidad, como \\servidor\sharename\

    OriginalEl autor jasonobrien

  7. 1

    Si usted está usando conda como un gestor de paquetes, una forma de superar la DLL problema para instalar oracle-instantclient haciendo un conda install oracle-instantclient. Esto fija la dependencia de la que no podía fijar manualmente la instalación de Oracle instant-cliente.

    OriginalEl autor user3819536

  8. 0

    Como es la segunda vez que vine a esta pregunta, siento la necesidad de publicar lo que he hecho:

    Estoy usando:

    • Win 8 de 64 bits
    • Python 2.7

    No tuvo éxito la instalación de Python y cx_Oracle de 64 bits.

    Sólo funcionaba cuando traté de 32 bits y las versiones seguido @rob responder a instrucciones

    OriginalEl autor Marcelo Assis

  9. 0

    Tuve el mismo problema con el archivo DLL error de carga en mi máquina Windows.
    instalado el cliente de oracle, el conjunto de variables, corrió cx_Oracle-5.1.3-11g.win32-py2.7.exe archivo.

    sin embargo cuando he instalado cx_Oracle con easy_setup se solucionó el problema.

    C:\Python27\Scripts\easy_install.exe cx_Oracle-5.1.3-11g.win32-py2.7.exe

    OriginalEl autor maxim

  10. 0

    Pasos que he seguido :

    1. Descargado el cliente inteligente instantclient-basic-windows.x64-12.1.0.2.0.zip

    2. Extraído y copiado a #el directorio#\instantclient_12_1

      Por encima de directorio contiene los archivos dll

    3. Anexar la variable PATH con #el directorio#\instantclient_12_1 y creado env variable ORACLE_HOME= #el directorio#\instantclient_12_1

    4. Descargar e instalar cx_Oracle-5.2.1-11g.win-amd64-py2.7.exe

    5. Abierto de inactividad tipo de importación cx_Oracle

    Esto no parece responder a la pregunta o contribuir a la discusión.
    Sí, así es. Ayuda a ver el orden correcto y los pasos dados para obtener cx_Oracle instalado.

    OriginalEl autor rupesh patil

  11. 0

    si usted está usando Anaconda en Windows intenta:

    conda install cx_oracle

    en el cmd

    -> este

    Esto realmente funciona para mí.

    OriginalEl autor user6405238

  12. 0

    Sé que este es un viejo post, pero he tenido este problema en la actualidad, y ninguna de las soluciones trabajado. Me imagino que esto podría funcionar para otros con el mismo problema que el de ahora.

    De la versión de Python : 2.7.15 (64 bits)
    cx_Oracle versión : 6.4.1
    Oracle Instant Client : 18.3

    Yo seguía recibiendo el siguiente error, aunque he seguido evry pasos en el orden correcto :

    cx_Oracle.DatabaseError: DPI-1047: el Cliente de Oracle de la biblioteca no se puede cargar

    Lo resuelto por la degradación mi Oracle Instant Client versión 12.1

    Por favor, añada más detalles sobre el entorno y/o abrir un GitHub problema por lo que podemos entender por qué esto era necesario.

    OriginalEl autor Dominique Lambert

Dejar respuesta

Please enter your comment!
Please enter your name here