私は私がのlibusbを使用していドライバがLinuxへの変換
(場合と同様にHereが、別のデバイスを説明した)のWindowsドライバを持っているデバイスにLinux用のドライバを書くためにしようとしていますLinuxサイドでの通信、USB USBスニファとしてのSourceUSB(Windowsマシン上で)などがあります。今、私はコントロールとバルクを正しく複製したと思いますが、Windowsのログに対してLinuxログを実際にテストすることはできません。私は、VM上でUbuntu 12.04を実行しています。
だから私の質問は以下のとおりです。
- マルチロガーはありますか?これにより、ログの比較処理が大幅に簡素化されます。
- USBデバイスをVMに接続すると、WindowsにVMドライバがインストールされます。このデバイスをスニッフィングすると、デバイスに見られるものが正確に表示されます。私は嗅ぎたいと思っていますか?
EDIT: 私はWindows上で自分のアプリケーションをコンパイルした(のlibusbは、クロスプラットフォームである - このような良い仕事をした開発者のlibusbする大きな感謝)と私のアプリケーションが正常に働いていました。
Linux上でアプリケーションを実行しているときにVMドライバを盗聴すると、CONTROL_TRANSFERおよびBULK_OR_INTERRUPTではなく、VENDOR_DEVICEとしてUSBへの要求が表示されます。これは、デバイスが「見ている」ものなので、正しく理解すれば問題になるようです。
だから私の問題はLinuxがなぜ私の要求をベンダーとして送るのかということだと思います。
ANOTHER EDIT:問題解決:VMドライバを聴く
- は、私に私のUSBのLinuxドライバのトラフィックを私は望んでいたとして(私は、VMのドライバトラフィックにない聞いていた間違ったリクエストを与えました
- のlibusbは完全にマルチプラットフォームです。これは、Windowsでコンパイルする私のコードを取得するために私に数分を要し、そしてそこから、それはデバッグにかなり簡単だったとあなたはUSBトラフィックをキャプチャするWiresharkのを使用することができ、ログ