Pasé los últimos 2 días tratando de ejecutar ejemplos de Boost.Python con el error "ImportError: error de carga DLL: no se pudo encontrar el módulo especificado" al intentar cargar módulos pyd compilados (utilizando bjam). Estaba usando Windows 7 x64, Python 2.7 x64 con Boost 1.47. He seguido diferentes respuestas en StackOverflow y otros sitios incl. instalaciones nuevas (Python 32 y 64 bit, Boost precompilado), creación manual de bibliotecas de Boost, cheques de DLL con walker de dependencias y demás, sin suerte. Me registré para compartir la solución, que funcionó aquí y que espero pueda ayudar a alguien, luchando con el mismo error;)Ejemplos de Boost.Python, Windows 7 x64, "ImportError: Error de carga DLL: no se pudo encontrar el módulo especificado".
Respuesta
El problema fue con la actualización de Windows KB2264107 (http://support.microsoft.com/kb/ 2264107), "messing" con la rutina de búsqueda de DLL (corrección de seguridad). Estableciendo el valor de registro [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager]: CWDIllegalInDllSearch en 0, permitido cargar correctamente los archivos DLL e importar correctamente los módulos .pyd. Esto también puede suceder en otras versiones de Windows.
Dos solución, sin necesidad de utilizar regedit
- añadir
BOOST_PYTHON_STATIC_LIB
marco cuando construir su DLL. Permitirá boost.python enlace estático a su archivo dll en lugar de carga dinámica en tiempo de ejecución. - añadir DLL Boost.Python a PATH o copiarlo al mismo directorio donde el archivo DLL localizar
Tengo el mismo problema. Está relacionado con la ruta de búsqueda de DLL pero no tiene nada que ver con la actualización de Windows KB2264107 ("fijación" de la rutina de búsqueda de DLL). 2 es la respuesta correcta. – user5280911
mi soluition es descarga Microsoft Visual C++ 2015 redistribuir https://www.microsoft.com/en-us/download/details.aspx?id=48145
- 1. py2exe throws ImportError: DLL load failed: No se pudo encontrar el módulo especificado
- 2. WindowsError: [Error 126] El módulo especificado no se pudo encontrar
- 3. Error SQL Server Compact: no se puede cargar DLL 'sqlceme35.dll'. El módulo especificado no se pudo encontrar
- 4. LoadLibrary project.dll falló. El módulo especificado no se pudo encontrar
- 5. no se pudo encontrar el módulo especificado 0x8007007E
- 6. PHP/cURL en la instalación de Windows: "No se pudo encontrar el módulo especificado".
- 7. Pygame en Windows: ImportError: DLL carga fallida
- 8. UnsatisfiedLinkError: no se pudo encontrar el procedimiento especificado
- 9. No se pudo encontrar el módulo especificado. Excepción de HRESULT: 0x8007007E
- 10. ERROR: no se pudo encontrar el archivo de símbolos. windbg.exe
- 11. ¿Cómo depurar el "error no especificado" en Windows Phone 7?
- 12. Python26, Win32, Zbar - ImportError: carga DLL fallidos
- 13. Cython no se compilará en Windows 7 x64
- 14. Windows 7: no puede registrar DLL - Código de error: 0x80004005
- 15. NumPy ImportError en python - Dll carga fallida
- 16. no se pudo encontrar el * .apk Error
- 17. marca: no se pudo encontrar el módulo de 'Sistema'
- 18. OpenCV imwrite 2.2 causa una excepción con el mensaje "OpenCV Error: error no especificado (no se pudo encontrar un escritor para la extensión especificada)" en Windows 7
- 19. Haskell No se pudo encontrar el módulo `System '
- 20. PyPy en Windows 7 x64?
- 21. Mod_python error: ImportError: No se pudo importar la configuración
- 22. Windows Phone - XmlDocument no se pudo encontrar
- 23. AssemblyInfo.cs no se pudo abrir - Error no especificado
- 24. Sharepoint "No se pudo cargar el archivo o el ensamblado" "El sistema no puede encontrar el archivo especificado"
- 25. Depurador de aplicaciones para Windows 7 x64
- 26. 'No se pudo encontrar el estilo mapViewStyle' error persiste
- 27. Error: No se puede encontrar módulo 'ejs'
- 28. Las extensiones Mercurial no funcionan en Windows 7 x64?
- 29. error Dummynet controladores NDIS instalar en Windows 7 x64
- 30. Error: "No se pudo encontrar el ISAM instalable"
El problema fue con el [KB2264107 de Windows update] (http://support.microsoft.com/kb/2264107), "arreglando" la rutina de búsqueda de DLL (corrección de seguridad). Estableciendo el valor de registro [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager]: CWDIllegalInDllSearch en 0, permitido cargar correctamente los archivos DLL e importar correctamente los módulos .pyd. Esto también puede suceder en otras versiones de Windows. – stx
bienvenido a SO. Tenga en cuenta que SO es un sitio de respuestas y preguntas. No es un blog para registrar sus logros en la programación. – joaquin
@joaquin Lo sé, pero ¿cómo puedo compartir la solución cuando alguien tendrá problemas similares? Si es una [manera muy desalentada] (http://meta.stackexchange.com/questions/17463/should-i-ask-a-question-i-know-the-answer-to) y este hilo no es correcto, por favor moderador eliminarlo. – stx