IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES IOCTL (usbioctl.h)

IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES I/O 控制请求检索特定端口的 Microsoft 扩展端口属性。

IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES 是用户模式 I/O 控制请求。 此请求面向 USB 集线器设备 (GUID_DEVINTERFACE_USB_HUB) 。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

AssociatedIrp.SystemBuffer 成员指向用户分配USB_NODE_CONNECTION_ATTRIBUTES结构。 输入时,调用方指定USB_NODE_CONNECTION_ATTRIBUTES结构的 ConnectionIndex 成员中的端口号。

输入缓冲区长度

USB_NODE_CONNECTION_ATTRIBUTES 结构的大小。

输出缓冲区

在输出时,AssociatedIrp.SystemBuffer 中的USB_NODE_CONNECTION_ATTRIBUTES结构描述了端口的 Microsoft 扩展端口属性。 注意 对于 Windows Vista、Windows Server 2008 和 Windows 7,Microsoft 扩展端口属性字段设置为零。

对于 Windows XP 和 Windows Server 2003,Microsoft 扩展端口属性可能设置为 USB_PORTATTR_NO_OVERCURRENT_UI。 此值指示在端口上发生过流时,用户界面将被隐藏。

输出缓冲区长度

Parameters.DeviceIoControl.OutputBufferLength 指示 SystemBuffer 返回的数据的大小(以字节为单位)。

状态块

如果请求成功,USB 堆栈会将 Irp-IoStatus.Status> 设置为STATUS_SUCCESS。 否则,USB 堆栈会将 “状态” 设置为适当的错误条件,例如STATUS_INVALID_PARAMETER或STATUS_INSUFFICIENT_RESOURCES。 如果中心尚未启动或无法正常工作,则请求将返回STATUS_UNSUCCESSFUL。

要求

要求
最低受支持的客户端 Windows XP、Windows Server 2003 及更高版本。
标头 usbioctl.h (包括 Usbioctl.h)

另请参阅

USB_NODE_CONNECTION_ATTRIBUTES