IOCTL_USB_GET_NODE_CONNECTION_NAME I/O 控制请求与 USB_NODE_CONNECTION_NAME 结构一起使用,以检索附加到下游端口的中心的符号链接名称。
IOCTL_USB_GET_NODE_CONNECTION_NAME 是用户模式 I/O 控制请求。 此请求面向 USB 中心设备(GUID_DEVINTERFACE_USB_HUB)。
主要代码
输入缓冲区
AssociatedIrp.SystemBuffer 成员指向 USB_NODE_CONNECTION_NAME 结构。 输入时,ConnectionIndex 此结构的成员必须指示要检查附加中心的端口数。
输入缓冲区长度
USB_NODE_CONNECTION_NAME 结构的大小。
输出缓冲区
AssociatedIrp.SystemBuffer 指向 USB_NODE_CONNECTION_NAME 结构。 在输出中,此结构包含 HubName 成员中附加中心的符号名称。 如果未附加中心,中心没有符号链接,或者附加设备不是中心,HubName[0] 将包含一个值UNICODE_NULL。
输出缓冲区长度
Parameters.DeviceIoControl.OutputBufferLength 成员包含整个 USB_NODE_CONNECTION_NAME 结构的大小(以字节为单位)。
状态块
USB 堆栈 Irp->IoStatus.Status 设置为STATUS_SUCCESS(如果请求成功)。 请求报告成功,即使未附加任何中心,附加中心也没有符号链接,或者附加设备不是中心。
否则,USB 堆栈会将 状态 设置为适当的错误条件,例如STATUS_INVALID_PARAMETER或STATUS_INSUFFICIENT_RESOURCES。
要求
要求 | 价值 |
---|---|
标头 | usbioctl.h (包括 Usbioctl.h) |