IOCTL_INTERNAL_USB_RESET_PORT IOCTL (usbioctl.h)
IOCTL_INTERNAL_USB_RESET_PORT I/O 控制请求由驱动程序用于重置其所管理设备的上游端口。 成功重置后,总线驱动程序将重新选择设备在重置之前具有的配置和任何备用接口设置。 所有管道句柄、配置句柄和接口句柄保持有效。
驱动程序应取消所有 I/O 请求,并等待它们完成,然后再启动此操作。
在不重置整个复合设备及其所有接口的情况下,管理复合设备上的单个接口的驱动程序无法重置接口。 因此,管理接口的驱动程序应在重置接口之前尝试其他类型的错误恢复,例如重置管道 (_URB_PIPE_REQUEST) 。
此 IOCTL 必须以 PASSIVE_LEVEL 的 IRQL 发送。
IOCTL_INTERNAL_USB_RESET_PORT 是内核模式 I/O 控制请求。 此请求面向 USB 集线器 PDO。
主要代码
IRP_MJ_INTERNAL_DEVICE_CONTROL
输入缓冲区
无。
输入缓冲区长度
无。
输出缓冲区
无。
输出缓冲区长度
无。
状态块
总线或端口驱动程序将 Irp-IoStatus.Status> 设置为STATUS_SUCCESS或相应的错误状态。
要求
要求 | 值 |
---|---|
Header | usbioctl.h (包括 Usbioctl.h) |