IOCTL_INTERNAL_USB_SUBMIT_URB IOCTL (usbioctl.h)

驱动程序使用IOCTL_INTERNAL_USB_SUBMIT_URB I/O 控制请求向总线驱动程序提交 URB

IOCTL_INTERNAL_USB_SUBMIT_URB 是内核模式 I/O 控制请求。 此请求面向 USB 集线器 PDO。

主要代码

IRP_MJ_INTERNAL_DEVICE_CONTROL

输入缓冲区

Parameters.Others.Argument1 指向 URB,一个可变长度结构。 URB 的 UrbHeader.Function 成员指定 URB 类型。 URB 的长度以及任何附加成员的含义取决于 UrbHeader.Function 的值。 有关详细信息 ,请参阅 URB

输入缓冲区长度

UrbHeader.Length 成员指定 URB 的大小(以字节为单位)。

输出缓冲区

Parameters.Others.Argument1 指向 URB 结构。 UrbHeader.Status 包含所请求操作的 USB 状态代码。 任何其他输出取决于提交的 URB 的 UrbHeader.Function 成员。 有关详细信息 ,请参阅 URB

输出缓冲区长度

UrbHeader.Length 成员指定 URB 的大小(以字节为单位)。

状态块

如果 URB 可以成功处理,较低级别的驱动程序会将 Irp-IoStatus.Status> 设置为 STATUS_SUCCESS。 否则,总线驱动程序会将其设置为适当的错误条件,例如STATUS_INVALID_PARAMETER或STATUS_INSUFFICIENT_RESOURCES。

要求

要求
Header usbioctl.h (包括 Usbioctl.h)

另请参阅

URB