1. ホーム
  2. python

[解決済み] ImportError: DLL のロードに失敗しました: %1 は有効な Win32 アプリケーションではありません。しかし、DLLは存在します

2022-03-01 21:39:29

質問

によく似た状況があります。 Error "ImportError: DLL のロードに失敗しました: %1 は有効な Win32 アプリケーションではありません"。 しかし、そこにある答えは私のために動作していません。

私のPythonのコードでは

import cv2

しかし、その行はこの質問のタイトルにあるようなエラーを投げます。

OpenCVをインストールした C:\lib\opencv この64ビットマシンで 64ビットのPythonを使っています。

私のPYTHONPATH変数。 PYTHONPATH=C:\lib\opencv\build\python\2.7 . このフォルダには cv2.pyd で、以上です。

私のPATH変数。 Path=%OPENCV_DIR%\bin;... このフォルダには、以下のような39個のDLLファイルが含まれています。 opencv_core246d.dll .

OPENCV_DIR はこの値です。 OPENCV_DIR=C:\lib\opencv\build\x64\vc11 .

での解答は Error "ImportError: DLL のロードに失敗しました: %1 は有効な Win32 アプリケーションではありません"。 には、新しい opencv のバイナリパス ( C:\opencv\build\bin\Release ) をWindowsのPATH環境変数に追加してください"。しかし、上に示したように、私はすでにOpenCVのバイナリフォルダ( C:\lib\opencv\build\x64\vc11\bin ) をPATHに追加してください。そして、私の OpenCV のインストールには、Release フォルダがありません。 ビルド/ジャワ ).

何が問題なのでしょうか?Pythonにロードのプロセスを冗長にトレースするように指示できますか?正確にどのようなDLLファイルを探しているのでしょうか?

によると、私は気づいた。 http://www.dependencywalker.com/ は、その cv2.pydC:\lib\opencv\build\python\2.7 は32ビットですが、私が使っているマシンとPythonは64ビットです。これが問題なのでしょうか?もしそうなら、64ビット版のcv2.pydはどこで手に入るのでしょうか?

解決方法は?

Python 拡張パッケージの Windows 非公式バイナリ

Pythonのライブラリは、ここから探すことができます。