IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES I/O 控制请求检索特定端口的Microsoft扩展端口属性。
IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES 是用户模式 I/O 控制请求。 此请求面向 USB 中心设备(GUID_DEVINTERFACE_USB_HUB)。
主要代码
输入缓冲区
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) |