Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Klassentreiber sendet diese Anforderung, um den gesamten USB-Schnittstellendeskriptor für eine Funktion auf dem Gerät abzurufen.
Hauptcode
IRP_MJ_INTERNAL_DEVICE_CONTROL
Eingabepuffer
Ein Zeiger auf einen Puffer, der eine USBFN_INTERFACE_INFO Struktur enthält.
Eingabepufferlänge
Die Länge des Eingabepuffers muss mindestens sizeof(USBFN_INTERFACE_INFO)sein.
Ausgabepuffer
Ein Zeiger auf einen Puffer, der eine USBFN_INTERFACE_INFO Struktur enthält. Die USB-Funktionsklassenerweiterung (UFX) füllt die Struktur mit dem gesamten Satz der Schnittstellendeskriptor einschließlich der Endpunktdeskriptoren auf.
Länge des Ausgabepuffers
Die Länge des Ausgabepuffers muss mindestens sizeof(USBFN_INTERFACE_INFO)sein.
Statusblock
Wenn die Anforderung erfolgreich ist, gibt die USB-Funktionsklassenerweiterung (UFX) STATUS_SUCCESS oder einen anderen Statuswert zurück, für den NT_SUCCESS(Status) GLEICH TRUE ist. Andernfalls wird ein Statuswert zurückgegeben, für den NT_SUCCESS(Status) GLEICH FALSE ist.
Bemerkungen
Diese Anforderung muss nach dem Senden der IOCTL_INTERNAL_USBFN_ACTIVATE_USB_BUS Anforderung gesendet werden.
Die Länge des gesamten Schnittstellendeskriptors ist variabel. Der Klassentreiber muss diese IOCTL-Anforderung möglicherweise zweimal senden, um den gesamten Deskriptorsatz abzurufen.
Wenn die Länge des gesamten Deskriptorsatzes größer als die angegebene Ausgabepufferlänge ist, legt UFX den Size Member von USBFN_INTERFACE_INFO auf die tatsächliche Pufferlänge fest und schlägt die Anforderung mit STATUS_BUFFER_TOO_SMALL fehl. Der Treiber muss dann einen Ausgabepuffer der Länge zugeordnet werden, der durch Size angegeben wird, und die Anforderung erneut senden.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header- | usbfnioctl.h |