1

以下のコマンドで「デバイスまたはリソースがビジー」エラーが発生し、USB 大容量ストレージ デバイスへのデータの読み取り/書き込みに問題があります。

ioctl(usbFD, USBDEVFS_CLAIMINTERFACE, &interface_num) 

だから私は前にインターフェースを解放する必要があります。しかし、このコマンドにinterface_numを正しく渡すにはどうすればよいかわかりません:

ioctl(usbFD, USBDEVFS_RELEASEINTERFACE, &interface_num), 

定義されていない場合、このインターフェイス番号を見つける関数はありますか。私を助けてください!ありがとう。

4

1 に答える 1

0

ドキュメントには次のように記載されています。

USBDEVFS_RELEASEINTERFACE

USBDEVFS_CLAIMINTERFACEこれは、ファイル記述子が閉じられる前に、暗黙的にまたは呼び出しのために、インターフェイスで行われた要求 usbfs を解放するために使用されます。bInterfaceNumberioctl パラメーターは、インターフェースの番号 (記述子から)を保持する整数です。このリクエストでは、ファイルの変更時刻は更新されません。

しかし、ここで「パラメータは整数です」とは、あなたが示しているように、整数へのポインタを渡す必要があることを意味しているようです。記述子があれば、インターフェイス番号を見つけることができます。

于 2015-10-22T12:59:51.000 に答える