função WinUsb_GetDescriptor (winusb.h)
A função WinUsb_GetDescriptor retorna o descritor solicitado. Esta é uma operação síncrona.
Sintaxe
BOOL WinUsb_GetDescriptor(
[in] WINUSB_INTERFACE_HANDLE InterfaceHandle,
[in] UCHAR DescriptorType,
[in] UCHAR Index,
[in] USHORT LanguageID,
[out] PUCHAR Buffer,
[in] ULONG BufferLength,
[out] PULONG LengthTransferred
);
Parâmetros
[in] InterfaceHandle
Um identificador opaco para uma interface na configuração selecionada.
Para recuperar o dispositivo ou o descritor de configuração, use o identificador retornado por WinUsb_Initialize.
Para recuperar o descritor de interface da primeira interface, use o identificador retornado por WinUsb_Initialize.
Para recuperar o descritor de ponto de extremidade de um ponto de extremidade na primeira interface, use o identificador retornado por WinUsb_Initialize.
Para recuperar descritores de todas as outras interfaces e seus pontos de extremidade relacionados, use o identificador para a interface de destino, recuperada por WinUsb_GetAssociatedInterface.
[in] DescriptorType
Um valor que especifica o tipo de descritor a ser retornado. Esse parâmetro corresponde ao campo bDescriptorType de um descritor de dispositivo padrão, cujos valores são descritos na especificação do Barramento Serial Universal . Alguns desses valores são listados na descrição do membro DescriptorType da estrutura _URB_CONTROL_DESCRIPTOR_REQUEST .
[in] Index
O índice do descritor. Para obter uma explicação do índice do descritor, consulte a especificação do Barramento Serial Universal (www.usb.org).
[in] LanguageID
Um valor que especifica o identificador de idioma, se o descritor solicitado for um descritor de cadeia de caracteres.
[out] Buffer
Um buffer alocado pelo chamador que recebe o descritor solicitado.
[in] BufferLength
O comprimento, em bytes, de Buffer.
[out] LengthTransferred
O número de bytes que foram copiados para Buffer.
Retornar valor
WinUsb_GetDescriptorretornará TRUE se a operação for bem-sucedida. Caso contrário, essa rotina retornará FALSE e o chamador poderá recuperar o erro registrado chamando GetLastError.
GetLastError pode retornar o código de erro a seguir.
Código de retorno | Descrição |
---|---|
|
O chamador passou NULL no parâmetro InterfaceHandle . |
Comentários
Se o buffer de saída apontado pelo parâmetro Buffer for grande o suficiente, WinUsb_GetDescriptor criará uma cópia do descritor especificado no buffer de saída. Nenhum dado será copiado se o buffer não for grande o suficiente para armazenar dados do descritor. O descritor é criado durante a chamada WinUsb_Initialize ou pode ser recuperado neste ponto do dispositivo.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | winusb.h (inclua Winusb.h) |
Biblioteca | Winusb.lib |
DLL | Winusb.dll |