- ベストアンサー
javaプログラム(usb4javaを使用)
Windows7でusb4javaを使用するjavaの環境(Eclipse)、USBデーターの読込みを行なっています。 下記のサイトに、usb4javaのサンプルプログラム(SyncBulkTransfer.java)があります。 ここで、 result = LibUsb.claimInterface(handle, INTERFACE);文を実行したときに、下記のエラーが 発生します(これは、読込み操作の前の段階です)。 access denied (insufficient permissions) usb4java clainInterface このエラーの原因は、既にc:\Windows\System32の中にインストールしていますlibusb0.dllがWindows7のOSと相性が悪いとも考えられます。 注)libusb0.dllはsourceforgeのlibusb-Win32からdownloadしたものであり、このdllは libusb / libusb-win32 wrapperを利用するjavaの環境では問題ありません。 しかし7、前記の様にusb4javaを使用するjavaの開発環境では、エラーが発生します。 Q1)この"access denied"のエラーについてコメント頂けますと大変助かります。 https://github.com/usb4java/usb4java-examples/blob/master/src/main/java/org/usb4java/examples/SyncBulkTransfer.java 以上、宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
お試し頂きありがとうございます。 エラー解消せずですね・・・。 また基本的な部分で恐縮ですが、インストールしているdllとsysのbit数はOSと一致しておりますでしょうか? 参考URLに以下の記載がありましたので、そこの差異で失敗している可能性もあるかと思いまして。 >32bit版と64bit版でコピー元のディレクトリが違う >(32bit版はbin/x86、64bit版はbin/amd64)ので注意。
その他の回答 (1)
- heburusu
- ベストアンサー率85% (140/164)
既に試されていたらすみませんが、 Javaプログラムを管理者権限で実行しても同じエラーとなりますか?
補足
回答有難うございます。 >既に試されていたらすみませんが、 Javaプログラムを管理者権限で実行しても同じエラーとなりますか? <---早速、やってみましたが、同じエラーとなりました。
補足
毎度、お世話になります。 >また基本的な部分で恐縮ですが、インストールしているdllとsysのbit数はOSと一致しておりますでしょうか? <---私は、デバイスドライバーとしては、libusb0.dllとlibusb0.sysを使用しておる これらは、libusb-win32のbinの中にあったものを、c:\windows\system32にcopyして使用しています。 よって、USBの転送は、VC++やjavaのlibusb/libusb-win wrapperでは、正常に行なえます。 javaのusb4javaに於ける、エラーの発生はlibusb 1.0を使用すれば解消すると言う情報が 有りましたが、今ひとつ理解できないところがあります。 下記にその辺りに説明があるようですが、これも又今ひとつ理解できません。 https://github.com/libusb/libusb/wiki/Windows#How_to_use_libusb_on_Windows 以上