IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS IOCTL (usbioctl.h)

客户端驱动程序发送此请求以检索传输特征。

主要代码

IRP_MJ_DEVICE_CONTROL

输入/输出缓冲区

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 请求来完成所有这些任务。

要求

要求
最低受支持的客户端 Windows 10 版本 1709
最低受支持的服务器 Windows Server 2016
标头 usbioctl.h
IRQL <=DISPATCH_LEVEL

另请参阅

在驱动程序中创建 IOCTL 请求

不区分媒体的 (MA-USB) 协议的客户端驱动程序

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously