Condividi tramite


IOCTL_GENERICUSBFN_GET_INTERFACE_DESCRIPTOR_SET IOCTL (genericusbfnioctl.h)

Questo codice di controllo I/O (IOCTL) viene inviato da un servizio o da un'applicazione in modalità utente per ottenere l'intero descrittore di interfaccia USB (Universal Serial Bus) impostato per una funzione nel dispositivo.

Nota Questa richiesta IOCTL non recupera il descrittore di interfaccia impostato per l'intero dispositivo.

 

Buffer di input

Puntatore a una struttura USBFN_INTERFACE_INFO .

Lunghezza del buffer di input

Dimensione di una struttura USBFN_INTERFACE_INFO .

Buffer di output

Puntatore a un buffer contenente una struttura USBFN_INTERFACE_INFO . L'estensione della classe di funzione USB (UFX) popola la struttura con l'intero set di descrittori di interfaccia, inclusi i descrittori dell'endpoint.

Lunghezza del buffer di output

Dimensioni di un USBFN_INTERFACE_INFO.

Commenti

Questa richiesta deve essere inviata dopo l'invio della richiesta di IOCTL_GENERICUSBFN_ACTIVATE_USB_BUS .

La lunghezza dell'intero descrittore di interfaccia è variabile. Il driver di classe potrebbe dover inviare due volte questa richiesta IOCTL per ottenere l'intero set di descrittori.

Se la lunghezza dell'intero set di descrittore è maggiore della lunghezza del buffer di output specificata, UFX imposta il membro Size di USBFN_INTERFACE_INFO sulla lunghezza effettiva del buffer e non riesce la richiesta con STATUS_BUFFER_TOO_SMALL. Il driver deve quindi allocare un buffer di output di lunghezza specificato da Size e inviare di nuovo la richiesta.

Se il codice di controllo I/O (IOCTL) viene chiamato in modo sincrono, impostare il parametro lpOverlapped su NULL. Se questo IOCTL viene chiamato in modo asincrono, assegnare il parametro lpOverlapped a un puntatore a una struttura OVERLAPPED che contiene un handle a un oggetto evento. Gli oggetti evento segnalano quando l'operazione viene completata.

Il valore restituito è un valore BOOL che indica l'esito positivo o negativo dell'operazione. TRUE indica l'esito positivo, FALSE in caso contrario.

Requisiti

Requisito Valore
Intestazione genericusbfnioctl.h (include GenericUsbFnIoctl.h)

Vedi anche

Deviceiocontrol