Função SetupDiGetDeviceInterfaceDetailA (setupapi.h)
A função SetupDiGetDeviceInterfaceDetail retorna detalhes sobre uma interface do dispositivo.
Sintaxe
WINSETUPAPI BOOL SetupDiGetDeviceInterfaceDetailA(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
[out, optional] PSP_DEVICE_INTERFACE_DETAIL_DATA_A DeviceInterfaceDetailData,
[in] DWORD DeviceInterfaceDetailDataSize,
[out, optional] PDWORD RequiredSize,
[out, optional] PSP_DEVINFO_DATA DeviceInfoData
);
Parâmetros
[in] DeviceInfoSet
Um ponteiro para o conjunto de informações do dispositivo que contém a interface para a qual recuperar detalhes. Esse identificador normalmente é retornado por SetupDiGetClassDevs.
[in] DeviceInterfaceData
Um ponteiro para uma estrutura de SP_DEVICE_INTERFACE_DATA que especifica a interface em DeviceInfoSet para a qual recuperar detalhes. Um ponteiro desse tipo normalmente é retornado por SetupDiEnumDeviceInterfaces.
[out, optional] DeviceInterfaceDetailData
Um ponteiro para uma estrutura SP_DEVICE_INTERFACE_DETAIL_DATA para receber informações sobre a interface especificada. Esse parâmetro é opcional e pode ser NULL. Esse parâmetro deve ser NULL se DeviceInterfaceDetailSize for zero. Se esse parâmetro for especificado, o chamador deverá definir DeviceInterfaceDetailData.cbSize para tamanhos de(SP_DEVICE_INTERFACE_DETAIL_DATA) antes de chamar essa função. O membro cbSize sempre contém o tamanho da parte fixa da estrutura de dados, não um tamanho que reflete a cadeia de caracteres de comprimento variável no final.
[in] DeviceInterfaceDetailDataSize
O tamanho do buffer DeviceInterfaceDetailData
Esse parâmetro deverá ser zero se deviceInterfaceDetailData estiver NULL.
[out, optional] RequiredSize
Um ponteiro para uma variável do tipo DWORD que recebe o tamanho necessário do buffer DeviceInterfaceDetailData
[out, optional] DeviceInfoData
Um ponteiro para um buffer que recebe informações sobre o dispositivo que dá suporte à interface solicitada. O chamador deve definir DeviceInfoData.cbSize para tamanhos de(SP_DEVINFO_DATA). Esse parâmetro é opcional e pode ser NULL.
Valor de retorno
SetupDiGetDeviceInterfaceDetail retornará verdadeiro se a função for concluída sem erros. Se a função for concluída com um erro, FALSE será retornado e o código de erro da falha poderá ser recuperado chamando GetLastError.
Observações
Usar essa função para obter detalhes sobre uma interface normalmente é um processo de duas etapas:
-
Obtenha o tamanho do buffer necessário. Chame
SetupDiGetDeviceInterfaceDetail com um ponteiro NULL DeviceInterfaceDetailData, um DeviceInterfaceDetailDataSize de zero e uma variável derequiredSize válida. Em resposta a essa chamada, essa função retorna o tamanho do buffer necessário em RequiredSize e falha com GetLastError retornando ERROR_INSUFFICIENT_BUFFER. - Aloque um buffer de tamanho apropriado e chame a função novamente para obter os detalhes da interface.
Nota
O cabeçalho setupapi.h define SetupDiGetDeviceInterfaceDetail como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível no Microsoft Windows 2000 e versões posteriores do Windows. |
da Plataforma de Destino |
Área de trabalho |
cabeçalho | setupapi.h (inclua Setupapi.h) |
biblioteca | Setupapi.lib |