Поделиться через


IOCTL_USB_GET_HUB_INFORMATION_EX IOCTL (usbioctl.h)

Запрос управления IOCTL_USB_GET_HUB_INFORMATION_EX ввода-вывода отправляется приложением для получения сведений о USB-концентраторе в структуре USB_HUB_INFORMATION_EX.

Запрос получает самый высокий номер порта в концентраторе. Для концентраторов USB 2.0 и SuperSpeed (не корневых концентраторов) запрос также извлекает связанные дескрипторы концентратора, как определено в спецификациях USB 2.0 и 3.0 соответственно.

IOCTL_USB_GET_HUB_INFORMATION_EX — это запрос на управление ввода-вывода в пользовательском режиме. Этот запрос предназначен для устройства USB-концентратора (GUID_DEVINTERFACE_USB_HUB).

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

AssociatedIrp.SystemBuffer указывает на структуру, выделенную вызывающим объектом USB_HUB_INFORMATION_EX.

Длина входного буфера

Элемент Parameters.DeviceIoControl.InputBufferLength указывает размер буфера, выделенного вызывающим объектом, размер которого равен sizeof(USB_HUB_INFORMATION_EX).

Выходной буфер

В выходных данных структура USB_HUB_INFORMATION_EX, на которую указывает AssociatedIrp.SystemBuffer, заполняется информацией о концентраторе.

Длина выходного буфера

Элемент Parameters.DeviceIoControl.OutputBufferLength указывает размер буфера вывода SystemBuffer.

Блок состояния

Стек USB устанавливает Irp->IoStatus.Status, чтобы STATUS_SUCCESS, если запрос выполнен успешно. В противном случае стек USB-драйверов устанавливает состояние соответствующего условия ошибки, например STATUS_INVALID_PARAMETER или STATUS_INSUFFICIENT_RESOURCES.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 8
минимальный поддерживаемый сервер Не поддерживается
заголовка usbioctl.h (include Usbioctl.h)

См. также

USB_HUB_INFORMATION_EX