次の方法で共有


IOCTL_INTERNAL_USB_RESET_PORT IOCTL (usbioctl.h)

IOCTL_INTERNAL_USB_RESET_PORT I/O 制御要求は、ドライバーが管理するデバイスのアップストリーム ポートをリセットするために使用されます。 リセットが成功すると、バス ドライバーは、リセットが発生する前にデバイスが持っていた構成と代替インターフェイス設定を再選択します。 すべてのパイプ ハンドル、構成ハンドル、およびインターフェイス ハンドルは引き続き有効です。

ドライバーは、すべての I/O 要求を取り消し、完了するまで待ってからこの操作を開始する必要があります。

複合デバイス上の個々のインターフェイスを管理するドライバーは、複合デバイス全体とそのすべてのインターフェイスをリセットしないと、インターフェイスをリセットできません。 このため、インターフェイスを管理するドライバーは、インターフェイスをリセットする前に、パイプ (_URB_PIPE_REQUEST) のリセットなど、他の種類のエラー回復を試みる必要があります。

この IOCTL は、PASSIVE_LEVELの IRQL で送信する必要があります。

IOCTL_INTERNAL_USB_RESET_PORT は、カーネル モードの I/O 制御要求です。 この要求は、USB ハブ PDO を対象とします。

メジャー コード

IRP_MJ_INTERNAL_DEVICE_CONTROL

入力バッファー

何一つ。

入力バッファーの長さ

何一つ。

出力バッファー

何一つ。

出力バッファーの長さ

何一つ。

状態ブロック

バスまたはポート ドライバー Irp->IoStatus.Status をSTATUS_SUCCESSまたは適切なエラー状態に設定します。

必要条件

要件 価値
ヘッダー usbioctl.h (Usbioctl.h を含む)

関連項目

_URB_PIPE_REQUEST