Freigeben über


IOCTL_INTERNAL_USB_GET_HUB_NAME IOCTL (usbioctl.h)

Die IOCTL_INTERNAL_USB_GET_HUB_NAME E/A-Anforderung wird von Treibern verwendet, um den symbolischen UNICODE-Namen für das Ziel-PDO abzurufen, wenn die PDO für einen Hub verwendet wird. Andernfalls wird eine NULL- Zeichenfolge zurückgegeben.

Treiber können den symbolischen Namen verwenden, um zusätzliche Informationen zum Hub über Benutzermodus-E/A-Steuerelementanforderungen und WMI-Aufrufe abzurufen.

IOCTL_INTERNAL_USB_GET_HUB_NAME ist eine E/A-Steuerungsanforderung im Kernelmodus. Diese Anforderung zielt auf den USB-Hub-PDO ab. Diese Anforderung muss an eine IRQL von PASSIVE_LEVEL gesendet werden.

Hauptcode

IRP_MJ_INTERNAL_DEVICE_CONTROL

Eingabepuffer

Irp->AssociatedIrp.SystemBuffer verweist auf eine USB_HUB_NAME Struktur.

Eingabepufferlänge

Parameters.DeviceIoControl.OutputBufferLength ist die Länge des Puffers (in Bytes), der im Irp->AssociatedIrp.SystemBuffer Feld übergeben wird.

Ausgabepuffer

Irp->AssociatedIrp.SystemBuffer wird mit dem symbolischen Namen des Stammhubs gefüllt.

Länge des Ausgabepuffers

Die Länge des symbolischen Namens des Stammhubs.

Statusblock

Ein Treiber auf niedrigerer Ebene legt Irp->IoStatus.Status- auf STATUS_SUCCESS oder den entsprechenden Fehlerstatus fest. Es wird Irp->IoStatus.Information auf die Anzahl der Bytes festgelegt, die erforderlich sind, um die USB_ROOT_HUB_NAME Struktur zu halten. Wenn die Anforderung fehlschlägt, kann der Treiber diese Informationen verwenden, um die Anforderung erneut mit einem großen Puffer zu übermitteln.

Anforderungen

Anforderung Wert
Header- usbioctl.h (include Usbioctl.h)

Siehe auch

USB_ROOT_HUB_NAME