IOCTL_INTERNAL_USB_GET_HUB_NAME IOCTL (usbioctl.h)
如果 PDO 適用於中樞,驅動程式會使用 IOCTL_INTERNAL_USB_GET_HUB_NAME I/O 要求來擷取目標 PDO 的 UNICODE 符號名稱。 否則會傳回 NULL 字串。
驅動程式可以使用符號名稱,透過使用者模式 I/O 控制要求和 WMI 呼叫來擷取中樞的其他資訊。
IOCTL_INTERNAL_USB_GET_HUB_NAME 是內核模式 I/O 控制要求。 此要求以USB中樞 PDO 為目標。 此要求必須在PASSIVE_LEVEL的 IRQL 傳送。
主要程序代碼
IRP_MJ_INTERNAL_DEVICE_CONTROL
輸入緩衝區
Irp->AssociatedIrp.SystemBuffer 指向 USB_HUB_NAME 結構。
輸入緩衝區長度
Parameters.DeviceIoControl.OutputBufferLength 是緩衝區長度, (位元組) 在 Irp-AssociatedIrp.SystemBuffer> 字段中傳遞。
輸出緩衝區
Irp->AssociatedIrp.SystemBuffer 會填入根中樞的符號名稱。
輸出緩衝區長度
根中樞符號名稱的長度。
狀態區塊
較低層級的驅動程式會將 Irp-IoStatus.Status> 設定為STATUS_SUCCESS或適當的錯誤狀態。 它會將 Irp-IoStatus.Information> 設定為保存USB_ROOT_HUB_NAME結構所需的位元組數目。 如果要求失敗,驅動程式可以使用這項資訊來重新提交具有足夠大緩衝區的要求。
規格需求
需求 | 值 |
---|---|
標頭 | usbioctl.h (包含 Usbioctl.h) |