IOCTL_INTERNAL_USB_GET_PORT_STATUS IOCTL (usbioctl.h)
Die IOCTL_INTERNAL_USB_GET_PORT_STATUS E/A-Anforderung fragt den Status der PDO ab.
IOCTL_INTERNAL_USB_GET_PORT_STATUS ist eine E/A-Steuerungsanforderung im Kernelmodus. Diese Anforderung zielt auf den USB-Hub-PDO ab. Diese IOCTL muss an IRQL = PASSIVE_LEVEL gesendet werden.
Hauptcode
IRP_MJ_INTERNAL_DEVICE_CONTROL
Eingabepuffer
Parameters.Others.Argument1 sollte ein Zeiger auf eine ULONG sein, die mit den Portstatuskennzeichnungen ausgefüllt werden soll.
Eingabepufferlänge
Die Größe eines ULONG.
Ausgabepuffer
Parameters.Others.Argument1 verweist auf eine ULONG, die die Portstatuskennzeichnungen enthält. Die Kennzeichnungen können eine oder beide USBD_PORT_ENABLED (Bit 0) oder USBD_PORT_CONNECTED (Bit 1) sein. Wenn das USB_PORT_ENABLED Bit festgelegt ist, wurde der Port nach dem Zurücksetzen des geräts aktiviert, das mit dem Port verbunden ist. Wenn das USB_PORT_ENABLED Bit klar ist, hat die Software den Port oder die Hardware aufgrund von ungewöhnlichen Hardwarebedingungen deaktiviert. Wenn das USB_PORT_CONNECTED Bit festgelegt ist, hat der Hostcontroller-Stammhub oder externer Hub erkannt, dass ein Gerät mit dem Port verbunden ist. Wenn das USB_PORT_CONNECTED Bit gelöscht ist, hat der Hostcontroller-Stammhub oder externer Hub festgestellt, dass ein Gerät nicht mit dem Port verbunden ist.
Länge des Ausgabepuffers
Die Größe eines ULONG.
Statusblock
Der Bus- oder Porttreiber legt Irp->IoStatus.Status auf STATUS_SUCCESS oder den entsprechenden Fehlerstatus fest.
Anforderungen
Anforderung | Wert |
---|---|
Header- | usbioctl.h (include Usbioctl.h) |