IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS IOCTL (usbioctl.h)
客户端驱动程序发送此请求以检索传输特征。
主要代码
输入/输出缓冲区
AssociatedIrp.SystemBuffer 成员是指向调用方分配的USB_TRANSPORT_CHARACTERISTICS结构的指针。 输入时,将 “版本 ”设置为“USB_TRANSPORT_CHARACTERISTICS_VERSION_1”。 输出 时,版本 重置为小于或等于 USB_TRANSPORT_CHARACTERISTICS_VERSION_1 的版本;结构的其余成员充满了运输信息。
输入/输出缓冲区长度
USB_TRANSPORT_CHARACTERISTICS结构的大小。
状态块
Irp->如果请求成功,IoStatus.Status 设置为 STATUS_SUCCESS。 否则, 状态 为相应的错误条件作为 NTSTATUS 代码。
注解
此请求检索传输特征,以确定流式处理算法。 例如,显示驱动程序可以使用延迟和带宽信息来决定其编解码器选择。
此信息可能并非始终可用。 USB 驱动程序堆栈依赖于基础传输来公开这些值。 因此,客户端驱动程序必须具有针对此类请求的备份机制。
如果客户端驱动程序希望随时了解最新信息,则驱动程序必须在传输特征发生更改时注册通知,在 USB 驱动程序堆栈中保留挂起的请求,并在不再需要通知时取消注册。 驱动程序可以通过发送这些 IOCTL 请求来完成所有这些任务。
- IOCTL_USB_REGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_NOTIFY_ON_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_UNREGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 版本 1709 |
最低受支持的服务器 | Windows Server 2016 |
标头 | usbioctl.h |
IRQL | <=DISPATCH_LEVEL |
另请参阅
WdfIoTargetSendInternalIoctlOthersSynchronously