8

Python でC++ を使用しようとしています.dllが、読み込めません。次の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 に答える