IOCTL_USB_HUB_CYCLE_PORT IOCTL (usbioctl.h)
IOCTL_USB_HUB_CYCLE_PORT запрос на ввод-вывод в режиме питания циклирует порт, связанный с PDO, который получает запрос.
IOCTL_USB_HUB_CYCLE_PORT — это запрос управления ввода-вывода в пользовательском режиме. Этот запрос предназначен для устройства USB-концентратора (GUID_DEVINTERFACE_USB_HUB).
Основной код
Входной буфер
Элемент AssociatedIrp.SystemBuffer указывает на выделенную вызывающим USB_CYCLE_PORT_PARAMS структуру, указывающую номер порта.
Длина входного буфера
Размер USB_CYCLE_PORT_PARAMS структуры.
Выходной буфер
Никакой.
Длина выходного буфера
Никакой.
Блок состояния
Стек USB устанавливает Irp->IoStatus.Status, чтобы STATUS_SUCCESS, если запрос выполнен успешно. В противном случае usb-стек устанавливает состояние соответствующего условия ошибки, например STATUS_INVALID_PARAMETER или STATUS_INSUFFICIENT_RESOURCES.
Замечания
Кроме того, можно использовать функцию диспетчера устройстввключить/отключить. Эта функция приводит к сбросу устройства водителем шины. Кроме того, можно использовать DevCon для включения или отключения устройства.
Исполняемый файл devCon можно найти в папке <install_path>\WinDDK\build_number\tools\devcon\<arch>\devcon.exe
.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Поддерживается в Windows 8 и более поздних версиях Windows, если вызывающий объект работает от имени администратора. Поддерживается в Microsoft Windows Server 2003, версиях Windows XP. Не поддерживается в Windows 7, Windows Vista и Windows Server 2008. |
заголовка | usbioctl.h (include Usbioctl.h) |