IOCTL_USB_GET_HUB_INFORMATION_EX IOCTL (usbioctl.h)

A solicitação de controle de E/ S IOCTL_USB_GET_HUB_INFORMATION_EX é enviada por um aplicativo para recuperar informações sobre um hub USB em uma estrutura de USB_HUB_INFORMATION_EX .

A solicitação recupera o número de porta mais alto no hub. Para hubs USB 2.0 e SuperSpeed (hubs não raiz), a solicitação também recupera os descritores de hub associados, conforme definido em Especificações USB 2.0 e 3.0, respectivamente.

IOCTL_USB_GET_HUB_INFORMATION_EX é uma solicitação de controle de E/S no modo de usuário. Essa solicitação tem como destino o dispositivo de hub USB (GUID_DEVINTERFACE_USB_HUB).

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

AssociatedIrp.SystemBuffer aponta para uma estrutura de USB_HUB_INFORMATION_EX alocada pelo chamador.

Comprimento do buffer de entrada

O membro Parameters.DeviceIoControl.InputBufferLength indica o tamanho, em bytes, do buffer alocado pelo chamador cujo tamanho é igual sizeof(USB_HUB_INFORMATION_EX)a .

Buffer de saída

Na saída, a estrutura de USB_HUB_INFORMATION_EX apontada por AssociatedIrp.SystemBuffer é preenchida com informações sobre o hub.

Comprimento do buffer de saída

O membro Parameters.DeviceIoControl.OutputBufferLength indica o tamanho, em bytes, do buffer de saída SystemBuffer.

Bloco de status

A pilha USB define Irp-IoStatus.Status> como STATUS_SUCCESS se a solicitação for bem-sucedida. Caso contrário, a pilha do driver USB define Status como a condição de erro apropriada, como STATUS_INVALID_PARAMETER ou STATUS_INSUFFICIENT_RESOURCES.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8
Servidor mínimo com suporte Nenhum compatível
Cabeçalho usbioctl.h (inclua Usbioctl.h)

Confira também

USB_HUB_INFORMATION_EX