8

我正在尝试.dll在 Python 中使用 C++,但我什至无法加载它。我正在尝试以下 python 代码来加载它:

from ctypes import cdll
mydll = cdll.LoadLibrary('SORT_DLL.dll')

但是当我尝试运行它时,我得到:

D:\...\src\SORT_DLL\Debug>UseDll.py
Traceback (most recent call last):
  File "D:\...\src\SORT_DLL\Debug\UseDll.py", line 2, in
 <module>
    mydll = cdll.LoadLibrary('SORT_DLL.dll')
  File "C:\Python27\lib\ctypes\__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "C:\Python27\lib\ctypes\__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
WindowsError: [Error 193] %1 ist keine zulõssige Win32-Anwendung

最后一句用英语表示“%1 不是有效的 Win32 应用程序”。

我已经在http://docs.python.org/2/library/ctypes.html#module-ctypes上查看了它,但这并没有解决我的问题。

4

2 回答 2

6

听起来您安装了不兼容的 Python 版本,或者使用错误的设置编译了 DLL。DLL 和 Python 解释器都必须是 32 位或 64 位。

于 2012-11-07T11:30:54.323 回答
0

参考这个答案: https ://stackoverflow.com/a/10163943/953887

“ctypes 不适用于编写 [DLL] 示例的 C++。”

于 2012-11-07T07:46:35.580 回答