IOCTL_GENERICUSBFN_GET_INTERFACE_DESCRIPTOR_SET IOCTL (genericusbfnioctl.h)
Esse IOCTL (código de controle de E/S) é enviado por um serviço ou aplicativo no modo de usuário para obter todo o descritor de interface USB (Barramento Serial Universal) definido para uma função no dispositivo.
Buffer de entrada
Um ponteiro para uma estrutura USBFN_INTERFACE_INFO .
Comprimento do buffer de entrada
O tamanho de uma estrutura USBFN_INTERFACE_INFO .
Buffer de saída
Um ponteiro para um buffer que contém uma estrutura USBFN_INTERFACE_INFO . A extensão de classe de função USB (UFX) preenche a estrutura com todo o descritor de interface definido, incluindo seus descritores de ponto de extremidade.
Comprimento do buffer de saída
O tamanho de um USBFN_INTERFACE_INFO.
Comentários
Essa solicitação deve ser enviada depois de enviar a solicitação de IOCTL_GENERICUSBFN_ACTIVATE_USB_BUS .
O comprimento de todo o descritor de interface é variável. O driver de classe pode precisar enviar essa solicitação IOCTL duas vezes para obter todo o descritor definido.
Se o comprimento de todo o conjunto de descritores for maior que o tamanho do buffer de saída especificado, o UFX definirá o membro Size de USBFN_INTERFACE_INFO como o comprimento real do buffer e falhará na solicitação com STATUS_BUFFER_TOO_SMALL. Em seguida, o driver deve alocar um buffer de saída de comprimento especificado por Size e reenviar a solicitação.
Se esse IOCTL (código de controle de E/S) estiver sendo chamado de forma síncrona, defina o parâmetro lpOverlapped como NULL. Se esse IOCTL for chamado de forma assíncrona, atribua o parâmetro lpOverlapped a um ponteiro para uma estrutura OVERLAPPED que contém um identificador para um objeto de evento. Os objetos de evento sinalizam quando a operação é concluída.
O valor retornado é um valor BOOL que indica êxito ou falha da operação. TRUE indica êxito, caso contrário, FALSE.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | genericusbfnioctl.h (inclua GenericUsbFnIoctl.h) |