Я переименовал свой файл в foo.pyd. В интерпретаторе я запустил import foo. Выдает ошибку
Код: Выделить всё
ImportError: DLL load failed while importing foo: The specified module could not be found.
https://github.com/adamrehn/dll-diagnostics
и ничего не пропало.
Более того, я использовал winapi для win32api.LoadLibrary( foo.pyd ) и win32api.GetProcAddress( PyInit_foo ). Нет проблем.
Почему не загружается?
Что за бесполезное сообщение об ошибке?
@metatoaster указал на решение.
Это безумие. И в настоящее время я не вижу способа запросить эту новую переменную пути или проверить, все ли в ней есть.
В любом случае, мое быстрое решение на данный момент:
Код: Выделить всё
import os
for p in os.environ[ 'PATH' ].split( ';' ):
if os.path.isdir( p ):
print( p )
os.add_dll_directory( p )
Подробнее здесь: https://stackoverflow.com/questions/791 ... e-is-great