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


IOCTL_INTERNAL_USB_GET_HUB_NAME IOCTL (usbioctl.h)

Запрос ввода-вывода IOCTL_INTERNAL_USB_GET_HUB_NAME используется драйверами для получения символьного имени ЮНИКОДа для целевого PDO, если PDO предназначен для концентратора. В противном случае возвращается строка NULL.

Драйверы могут использовать символьное имя для получения дополнительных сведений о концентраторе с помощью запросов управления ввода-вывода в пользовательском режиме и вызовов WMI.

IOCTL_INTERNAL_USB_GET_HUB_NAME — это запрос управления в режиме ядра. Этот запрос предназначен для PDO USB-концентратора. Этот запрос должен быть отправлен по irQL PASSIVE_LEVEL.

Основной код

IRP_MJ_INTERNAL_DEVICE_CONTROL

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

Irp->AssociatedIrp.SystemBuffer указывает на структуру USB_HUB_NAME.

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

Parameters.DeviceIoControl.OutputBufferLength — это длина буфера (в байтах), переданного в поле Irp->AssociatedIrp.SystemBuffer.

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

Irp->AssociatedIrp.SystemBuffer заполняется символическим именем корневого концентратора.

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

Длина символьного имени корневого концентратора.

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

Драйвер нижнего уровня задает Irp->IoStatus.Status для STATUS_SUCCESS или соответствующего состояния ошибки. Он установит Irp->IoStatus.Information количество байтов, необходимых для хранения структуры USB_ROOT_HUB_NAME. Если запрос завершается сбоем, драйвер может использовать эти сведения для повторного отправки запроса с достаточно большим буфером.

Требования

Требование Ценность
заголовка usbioctl.h (include Usbioctl.h)

См. также

USB_ROOT_HUB_NAME