次の方法で共有


IOCTL_USB_GET_NODE_CONNECTION_INFORMATION IOCTL (usbioctl.h)

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION要求は、指定された USB ポートと、ポートに接続されているデバイスに関する情報を取得します (存在する場合)。

クライアント ドライバーは、PASSIVE_LEVELの IRQL でこの IOCTL を送信する必要があります。

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION は、ユーザー モードの I/O 制御要求です。 この要求は、USB ハブ デバイス (GUID_DEVINTERFACE_USB_HUB) を対象とします。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

AssociatedIrp.SystemBuffer メンバーは、接続を記述するユーザー割り当てUSB_NODE_CONNECTION_INFORMATION構造体を指します。 入力時に、この構造体の ConnectionIndex メンバーにはポート番号が含まれます。

入力バッファーの長さ

USB_NODE_CONNECTION_INFORMATION構造体のサイズ。

出力バッファー

出力時には、 Parameters.DeviceIoControl.OutputBufferLength メンバーに出力データのサイズが含まれます。 ポートに関連付けられているパイプの数によって異なるため、このサイズは可変です。

AssociatedIrp.SystemBuffer は 、出力データを含むユーザー割り当て USB_NODE_CONNECTION_INFORMATION 構造体を指します。

出力バッファーの長さ

USB_NODE_CONNECTION_INFORMATION構造体のサイズ。

ステータス ブロック

USB スタックは、要求が成功した場合に Irp-IoStatus.Status> をSTATUS_SUCCESSに設定します。 それ以外の場合、USB スタックは 状態 を適切なエラー状態 (STATUS_INVALID_PARAMETERやSTATUS_INSUFFICIENT_RESOURCESなど) に設定します。

注釈

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX要求は、IOCTL_USB_GET_NODE_CONNECTION_INFORMATIONの拡張バージョンです。 2 つの要求は同じですが、要求の拡張バージョンでは低速、完全、高速の接続を報告でき、古い IOCTL_USB_GET_NODE_CONNECTION_INFORMATION 要求では低速接続と全速度接続のみが報告される点が除きます。 これら 2 つの要求の違いの詳細については、「 USB_NODE_CONNECTION_INFORMATIONUSB_NODE_CONNECTION_INFORMATION_EX」を参照してください。

要件

要件
Header usbioctl.h (Usbioctl.h を含む)

こちらもご覧ください

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX

USB_NODE_CONNECTION_INFORMATION

USB_NODE_CONNECTION_INFORMATION_EX