Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python类型使用winmode加载DLL < >我安装了一个C++ API应用程序,它把几个DLL( A.DLL < /代码>和 B.DLL >代码> >放入我的程序文件夹中。code>A.DLL依赖于B.DLL_Python_Ctypes - Fatal编程技术网

Python类型使用winmode加载DLL < >我安装了一个C++ API应用程序,它把几个DLL( A.DLL < /代码>和 B.DLL >代码> >放入我的程序文件夹中。code>A.DLL依赖于B.DLL

Python类型使用winmode加载DLL < >我安装了一个C++ API应用程序,它把几个DLL( A.DLL < /代码>和 B.DLL >代码> >放入我的程序文件夹中。code>A.DLL依赖于B.DLL,python,ctypes,Python,Ctypes,如果从安装文件夹(如C:\Programs Files\XXX-API\A.DLL 如果我将文件夹移动到另一个位置C:\TEMP\,Python加载程序会抱怨找不到B.DLL 我正在调查,看起来它会解决问题。winmode似乎从中的参数中获取一个整数 例如: 加载\u库\u搜索\u DLL\u加载\u目录 0x00000100 使用LOAD\u LIBRARY\u SEARCH\u DLL\u LOAD\u DIR,将0x00000100作为256传递到winmode?ctype将投诉找不到B.

如果从安装文件夹(如
C:\Programs Files\XXX-API\A.DLL

如果我将文件夹移动到另一个位置
C:\TEMP\
,Python加载程序会抱怨找不到
B.DLL

我正在调查,看起来它会解决问题。
winmode
似乎从中的参数中获取一个整数

例如:

加载\u库\u搜索\u DLL\u加载\u目录

0x00000100

使用
LOAD\u LIBRARY\u SEARCH\u DLL\u LOAD\u DIR
,将
0x00000100
作为
256
传递到
winmode
?ctype将投诉找不到
B.DLL
,我不确定缺少什么,感谢您的任何意见,谢谢

ctypes.WinDLL(path_to_A_DLL , winmode = 256 )
备选案文1:

import nt
_func1 = ctypes.WinDLL(lib_name, winmode = nt._LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR)
备选案文2:

_func1 = ctypes.WinDLL(lib_name, winmode = 0x100)
两者都应该起作用

但我整天都在尝试os.add_dll_directory()。最后转到

_func1 = ctypes.WinDLL(absolute_lib_path, winmode = 0x8)

您使用的是什么Python版本?您所说的“将
0x00000002
作为
256
传递到
winmode
”是什么意思(因为它毫无意义)?同时发布stacktrace。你的最后一个代码片段不管用吗?@CristiFati谢谢,我正在使用python3.8。那是个打字错误。应该是
0x00000100
256
在12月份)。就是找不到
B.DLL
。我想。首先,你怎么知道找不到的是B.dll?请添加堆栈跟踪。第二,看一看。看起来不一样,但我认为是同一个问题(因此我可以将其标记为重复)。让我知道它是如何运作的…上一个版本对我来说很有用。据我所知,0x8对应于带有搜索路径()的加载路径,但在
nt
模块中不可用。