41

Python アプリケーション インターフェイスを USB 経由で NFC デバイスに接続しようとしています。最良のオプションはPyUSBのようですが、 libusb バックエンドに接続できません。私は得続けます

ValueError: バックエンドがありません

スタック トレースを調べたところ、usb/backend/libusb10.py(pyusb の一部である) がlibusb-1.0.dllバックエンドとして使用するためにロードしようとしていることがわかりましたが、見つかりません。私のパスにないということではありません。私のコンピューターにはまったくありません。

libusb-win32をインストールしましたが、結果のディレクトリには libusb0.dll しか含まれないようです。libusb-1.0.dll はどこにありますか???!

そのdllを入手する場所、またはPyUSBをWindows 7で動作させるための別の提案を知りたいです。

4

12 に答える 12

22

libusb-win32-devel-filter-1.2.6.0.exe をダウンロードしてインストールします。それはうまくいくはずです。

于 2015-07-10T03:46:31.563 に答える
8

最近、開発中のUSBデバイスと通信しようとして同様の問題が発生しました。私はlibusb-1.0.dllを探してウェブを調べましたが、運がありませんでした。ソースコードを見つけましたが、何もビルドされておらず、インストールする準備ができていません。最終的に、libusb0.dllであるlibusb-win32バイナリをインストールしました。

PyUSBは、libusb-1.0、libusb0、およびopenUSBバックエンドを検索します。

libusb0.dllはすでに私のシステムにありましたが、まだ何かが正しく設定されていませんでした。PyUSBが機能していませんでした。

ここの指示に従って、フィルタードライバーをインストールするために提供されているGUIツールとINFウィザードを使用してドライバーをダウンロードしてインストールしました。INFウィザードを実行するまで機能しなかったことに注意してください。

私はプログラミングにかなり慣れていないので、これをすべてまとめるための明確なドキュメント/例がないことに気づきました。

于 2012-12-26T22:04:16.253 に答える
6

私はPython 2.6.5を使用してlibusb-win32-device.bin-0.1.12.1おりpyusb-1.0.0-a0、Windows XPシステムでValueError: No backend available.

この問題についてウェブ上に本当の助けがなかったので、変数をctypes util.py使用してライブラリファイルを見つけるのに多くの時間を費やしました。Pathライブラリがpath含まれwindows\system32PYUSBおらず、見つかりませんでした。path変数を更新したところ、USB が機能するようになりました。

于 2013-04-30T20:45:49.627 に答える
1

「libusb API には 2 つのバージョンがあります。現在のlibusb-1.0API と、その以前のバージョンですlibusb-0.1。」( http://www.libusb.org/ ) "libusb-win32は USB ライブラリ <code>libusb-0.1 を Microsoft Windows オペレーティング システムに移植したものです". 同じページ(1.0.9現在のバージョン) から「最新リリースの tarball をダウンロード」すると、libusb-1.0同等のフォルダーWin32が見つかりますlibusb-1.0.dll。ビルドすることもできます: http://www.libusb.org/wiki/windows_backend

編集tarball は 2012 年のものであり、最新のソースは 2014-06-15 のものであるため、 ビルドする必要があります ( http://sourceforge.net/projects/libusb/files/libusb-1.0/からダウンロード)。

于 2014-09-16T12:49:59.503 に答える
0

PYUSB を使用して USB 経由で NFC デバイスに接続するには、そのデバイスのバックエンドをインストールする必要があります。libusb デバイス以外のデバイスのバックエンドはないと思います。

バックエンドを構築するため。デバイスのドライバー (.sys ファイル) を知る必要があるため、デバイスの機能を公開するラッパー DLL を作成できます。DLL には、PID と VID に基づいてデバイスを見つける方法、デバイスを開く別の方法、データを送信する別の方法などが必要です。

于 2014-08-06T18:55:02.387 に答える