IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS IOCTL (usbioctl.h)
クライアント ドライバーは、トランスポート特性を取得するためにこの要求を送信します。
メジャー コード
入力/出力バッファー
AssociatedIrp.SystemBuffer メンバーは、呼び出し元によって割り当てられたUSB_TRANSPORT_CHARACTERISTICS構造体へのポインターです。 入力時に、[ バージョン] を [USB_TRANSPORT_CHARACTERISTICS_VERSION_1] に設定します。 出力 時バージョン は、USB_TRANSPORT_CHARACTERISTICS_VERSION_1以下のバージョンにリセットされます。構造体の残りのメンバーにはトランスポート情報が格納されます。
入力/出力バッファーの長さ
USB_TRANSPORT_CHARACTERISTICS構造体のサイズ。
ステータス ブロック
Irp->要求が成功した場合、IoStatus.Status はSTATUS_SUCCESSに設定されます。 それ以外の場合は、NTSTATUS コードとして適切なエラー条件に対する状態。
注釈
この要求は、ストリーミング用のアルゴリズムを決定するトランスポート特性を取得します。 たとえば、ディスプレイ ドライバーは、待機時間と帯域幅の情報を使用してそのコーデックの選択を決定できます。
この情報は、常に使用できるわけではありません。 USB ドライバー スタックは、これらの値を公開する基になるトランスポートに依存します。 そのため、クライアント ドライバーには、要求が発生した場合に備えたバックアップ メカニズムが必要です。
クライアント ドライバーが常に最新の情報を把握することに関心がある場合、ドライバーは、トランスポート特性が変更されたときに通知に登録し、USB ドライバー スタックで保留中の要求を保持し、通知が不要になったときに登録を解除する必要があります。 ドライバーは、これらの IOCTL 要求を送信することで、これらのすべてのタスクを実行できます。
- IOCTL_USB_REGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_NOTIFY_ON_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_UNREGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 バージョン 1709 |
サポートされている最小のサーバー | Windows Server 2016 |
Header | usbioctl.h |
IRQL | <=DISPATCH_LEVEL |
こちらもご覧ください
Media-Agnostic (MA-USB) 用 USB クライアント ドライバー
WdfIoTargetSendInternalIoctlOthersSynchronously