Я знаю, что есть много тем о WinError 126 и так далее.Но мне действительно нужна помощь ...
У меня есть такой каталог:
- mytestscript.py
- my32bit.dll
- my64bit.dll
У меня установлен 32-битный и 64-битный интерпретатор Python.Теперь, если я запускаю mytestscript.py с 32-битным интерпретатором, все работает нормально.
import ctypes
dll = ctypes.windll.LoadLibrary("my32bit.dll")
print(dll)
Но если я запускаю его с 64-битным интерпретатором
import ctypes
dll = ctypes.windll.LoadLibrary("my64bit.dll")
print(dll)
, я получаю следующую ошибку:
Traceback (most recent call last):
File "C:/Users/Heinzeri/Desktop/TEMPY/mytestscript.py", line 4, in <module>
dll = ctypes.windll.LoadLibrary("my64bit.dll")
File "C:\Program Files\Python37-64\Lib\ctypes\__init__.py", line 434, in LoadLibrary
return self._dlltype(name)
File "C:\Program Files\Python37-64\Lib\ctypes\__init__.py", line 356, in __init__
self._handle = _dlopen(self._name, mode)
OSError: [Error 126] The specified module could not be found
В чем может быть причина того, что 64-битный Python не находит DLL?Нужно ли добавлять его в PATH / PYTHONPATH?Нужен ли Microsoft Microsoft Redistributable?
DLL проверяются на 64-битную и 32-битную версию и поставляются поставщиком.