Ho trascorso gli ultimi 2 giorni cercando di avviare degli esempi da Boost.Python con l'errore "ImportError: DLL non riuscita: il modulo specificato non è stato trovato", mentre cercavo di caricare i moduli pyd compilati (usando bjam). Stavo usando Windows 7 x64, Python 2.7 x64 con Boost 1.47. Ho seguito diverse risposte su StackOverflow e altri siti incl. nuove installazioni (Python 32 e 64 bit, Boost precompilato), creazione manuale delle librerie di Boost, controlli DLL con walker delle dipendenze e così via, senza fortuna. Mi sono registrato per condividere la soluzione, che ha funzionato qui e che spero possa aiutare qualcuno, a lottare con lo stesso errore;)Esempi Boost.Python, Windows 7 x64, "ImportError: caricamento DLL non riuscito: impossibile trovare il modulo specificato."
risposta
Il problema era con l'aggiornamento di Windows KB2264107 (http://support.microsoft.com/kb/ 2264107), "messing" con la routine di ricerca DLL (correzione per la sicurezza). Impostazione del valore di registro [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager]: CWDIllegalInDllSearch a 0, consente di caricare correttamente i file DLL e di importare correttamente i moduli .pyd. Questo può accadere anche su altre versioni di Windows.
Due soluzione, non c'è bisogno di usare regedit
- aggiungere
BOOST_PYTHON_STATIC_LIB
marco quando costruire la DLL. Permetterà al collegamento statico boost.python al file dll invece del carico dinamico in runtime. - aggiungere Boost.Python dll al PATH o copiarlo stessa directory in cui la DLL localizzare
Ho avuto lo stesso problema. È correlato al percorso di ricerca DLL ma non ha nulla a che fare con l'aggiornamento di Windows KB2264107 ("fixing" della routine di ricerca DLL). 2 è la risposta corretta. – user5280911
mia soluition è scaricare Microsoft Visual C++ 2015 ridistribuire https://www.microsoft.com/en-us/download/details.aspx?id=48145
- 1. ImportError: caricamento DLL non riuscito: impossibile trovare il modulo specificato
- 2. Impossibile importare cv2; "Caricamento DLL non riuscito"
- 3. impossibile trovare il modulo specificato 0x8007007E
- 4. Caricamento PYTHON DLL non riuscito
- 5. Impossibile caricare la DLL "opencv_core242": impossibile trovare il modulo specificato. Emgu CV
- 6. ImportError: caricamento DLL non riuscito:% 1 non è un'applicazione Win32 valida
- 7. NumPy ImportError in python - caricamento Dll fallito
- 8. Impossibile caricare DLL (Impossibile trovare il modulo HRESULT: 0x8007007E)
- 9. PyPy su Windows 7 x64?
- 10. WindowsError: [Errore 126] Il modulo specificato non è stato trovato
- 11. Impossibile utilizzare CreateObject da script VB su Windows 7 x64
- 12. Errore di importazione Python "Caricamento DLL non riuscito" | Python
- 13. Impossibile trovare il modulo durante il caricamento Jupyter Server Extension
- 14. Impossibile trovare il modulo 'Text.Regex.Posix'
- 15. scipy.optimize errore caricamento dll su Windows 8
- 16. Impossibile trovare System.Net.Http.Formatting dll
- 17. Avviso: impossibile trovare dll
- 18. Impossibile trovare il servizio IIS in Windows 7
- 19. "Errore irreversibile: impossibile trovare il grugnito locale." su Windows 7
- 20. Risoluzione "Caricamento DLL non riuscito:% 1 non è un'applicazione Win32 valida." per Pygame
- 21. .Net MVC 4 Progetto non riuscito con errore registro eventi "Impossibile caricare il modulo DLL C: \ WINDOWS \ system32 \ inetsrv \ aspnetcore.dll."
- 22. SDL Haskell: impossibile trovare mingw32.dll
- 23. Python Popen Impossibile trovare il file specificato
- 24. Impossibile trovare il modulo 'shelljs'
- 25. Impossibile trovare il modulo 'browserify'
- 26. Impossibile trovare il modulo 'winston'
- 27. Impossibile trovare il modulo 'glob'
- 28. Impossibile trovare il modulo "mscorwks.dll"
- 29. EEFileLoadException durante il caricamento di DLL C++ nella DLL gestita
- 30. aws-lambda Impossibile trovare il modulo
Il problema era con il [KB2264107 di Windows aggiornamento] (http://support.microsoft.com/kb/2264107), "correzione" della routine di ricerca DLL (correzione per la sicurezza). Impostazione del valore di registro [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager]: CWDIllegalInDllSearch a 0, consente di caricare correttamente i file DLL e di importare correttamente i moduli .pyd. Questo può accadere anche su altre versioni di Windows. – stx
benvenuto in SO. Nota che SO è un sito di risposte e domande. Non è un blog per registrare i tuoi risultati nella programmazione. – joaquin
@joaquin Lo so, ma come posso condividere la soluzione quando qualcuno affronta il problema simile? Se è un [molto scoraggiato modo] (http://meta.stackexchange.com/questions/17463/should-i-ask-a-question-i-know-the-answer-to) e questo thread non è corretto, si prega di moderatore rimuoverlo. – stx