IOCTL_GENERICUSBFN_GET_INTERFACE_DESCRIPTOR_SET IOCTL (genericusbfnioctl.h)

此 I/O 控制程式代碼 (IOCTL) 是由使用者模式服務或應用程式傳送,以取得裝置上針對函式設定的整個通用序列總線 (USB) 介面描述元。

注意 此 IOCTL 要求不會擷取整個裝置的介面描述元集。

 

輸入緩衝區

USBFN_INTERFACE_INFO 結構的指標。

輸入緩衝區長度

USBFN_INTERFACE_INFO 結構的大小。

輸出緩衝區

緩衝區的指標,其中包含 USBFN_INTERFACE_INFO 結構。 USB 函式類別延伸模組 (UFX) 會將包含其端點描述元的整個介面描述元集填入結構。

輸出緩衝區長度

USBFN_INTERFACE_INFO的大小。

備註

傳送 IOCTL_GENERICUSBFN_ACTIVATE_USB_BUS 要求之後,必須傳送此要求。

整個介面描述元的長度是可變的。 類別驅動程式可能需要傳送這個 IOCTL 要求兩次,以取得整個描述元集。

如果整個描述元集的長度大於指定的輸出緩衝區長度,UFX 會將 USBFN_INTERFACE_INFOSize 成員設定為實際的緩衝區長度,並讓要求失敗並STATUS_BUFFER_TOO_SMALL。 然後,驅動程式必須配置 Size 所指定長度的輸出緩衝區,然後重新傳送要求。

如果同步呼叫此 I/O 控件程式代碼 (IOCTL) ,請將 lpOverlapped 參數設定為 NULL。 如果以異步方式呼叫這個 IOCTL,請將 lpOverlapped 參數指派給包含事件物件的句柄之 OVERLAPPED 結構的指標。 當作業完成時,事件對象會發出訊號。

傳回值是 BOOL 值,表示作業成功或失敗。 TRUE 表示成功,否則為 FALSE。

規格需求

需求
標頭 genericusbfnioctl.h (include GenericUsbFnIoctl.h)

另請參閱

DeviceIoControl