IOCTL_INTERNAL_USB_GET_PORT_STATUS IOCTL (usbioctl.h)
Die IOCTL_INTERNAL_USB_GET_PORT_STATUS E/A-Anforderung fragt die status der PDO ab.
IOCTL_INTERNAL_USB_GET_PORT_STATUS ist eine E/A-Steuerungsanforderung im Kernelmodus. Diese Anforderung zielt auf die USB-Hub-PDO ab. Diese IOCTL muss am 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 Port-status-Flags ausgefüllt werden soll.
Länge des Eingabepuffers
Die Größe einer ULONG.
Ausgabepuffer
Parameters.Others.Argument1 verweist auf eine ULONG, in der die Port-status-Flags ausgefüllt sind. Die Flags können ein 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 aktiviert, nachdem das gerät zurückgesetzt wurde, das mit dem Port verbunden ist. Wenn das USB_PORT_ENABLED Bits eindeutig ist, hat die Software den Port deaktiviert, oder die Hardware hat ihn aufgrund von ungewöhnlichen Hardwarebedingungen deaktiviert. Wenn das USB_PORT_CONNECTED Bit festgelegt ist, hat der Stammhub des Hostcontrollers oder der externe Hub erkannt, dass ein Gerät mit dem Port verbunden ist. Wenn das USB_PORT_CONNECTED Bits eindeutig ist, hat der Stammhub des Hostcontrollers oder der externe Hub erkannt, dass ein Gerät nicht mit dem Port verbunden ist.
Länge des Ausgabepuffers
Die Größe einer ULONG.
Statusblock
Der Bus- oder Porttreiber legt Irp-IoStatus.Status> auf STATUS_SUCCESS oder den entsprechenden Fehler status fest.
Anforderungen
Anforderung | Wert |
---|---|
Header | usbioctl.h (include Usbioctl.h) |