IOCTL_INTERNAL_USBFN_GET_INTERFACE_DESCRIPTOR_SET IOCTL (usbfnioctl.h)
類別驅動程式會傳送此要求,以取得裝置上函式的整個USB介面描述元集。
注意 請勿使用此要求來擷取整個裝置的介面描述元集。
主要程序代碼
IRP_MJ_INTERNAL_DEVICE_CONTROL
輸入緩衝區
緩衝區的指標,其中包含 USBFN_INTERFACE_INFO 結構。
輸入緩衝區長度
輸入緩衝區的長度必須至少 sizeof(USBFN_INTERFACE_INFO)
。
輸出緩衝區
緩衝區的指標,其中包含 USBFN_INTERFACE_INFO 結構。 USB 函式類別延伸模組 (UFX) 會將整個介面描述元集填入結構,包括其端點描述元。
輸出緩衝區長度
輸出緩衝區的長度必須至少 sizeof(USBFN_INTERFACE_INFO)
。
狀態區塊
如果要求成功,USB 函式類別延伸模組 (UFX) 會傳回 STATUS_SUCCESS,或NT_SUCCESS(status) 等於 TRUE 的另一個狀態值。 否則會傳回狀態值,NT_SUCCESS(status) 等於 FALSE。
言論
傳送 IOCTL_INTERNAL_USBFN_ACTIVATE_USB_BUS 要求之後,必須傳送此要求。
整個介面描述元的長度是可變的。 類別驅動程式可能需要傳送此 IOCTL 要求兩次,以取得整個描述元集。
如果整個描述項集的長度大於指定的輸出緩衝區長度,UFX 會將 Size 成員 USBFN_INTERFACE_INFO 的實際緩衝區長度設定為實際的緩衝區長度,並讓要求STATUS_BUFFER_TOO_SMALL失敗。 然後,驅動程式必須配置 Size 所指定的輸出緩衝區, 並重新傳送要求。
要求
要求 | 價值 |
---|---|
標頭 | usbfnioctl.h |