Compartilhar via


Função SetupDiEnumDeviceInterfaces (setupapi.h)

A função SetupDiEnumDeviceInterfaces enumera as interfaces do dispositivo contidas em um conjunto de informações do dispositivo.

Sintaxe

WINSETUPAPI BOOL SetupDiEnumDeviceInterfaces(
  [in]           HDEVINFO                  DeviceInfoSet,
  [in, optional] PSP_DEVINFO_DATA          DeviceInfoData,
  [in]           const GUID                *InterfaceClassGuid,
  [in]           DWORD                     MemberIndex,
  [out]          PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData
);

Parâmetros

[in] DeviceInfoSet

Um ponteiro para um conjunto de informações do dispositivo que contém as interfaces do dispositivo para as quais retornar informações. Esse identificador normalmente é retornado por SetupDiGetClassDevs.

[in, optional] DeviceInfoData

Um ponteiro para uma estrutura SP_DEVINFO_DATA que especifica um elemento de informações do dispositivo em DeviceInfoSet. Esse parâmetro é opcional e pode ser NULL. Se esse parâmetro for especificado, SetupDiEnumDeviceInterfaces restringirá a enumeração às interfaces compatíveis com o dispositivo especificado. Se esse parâmetro for NULL, chamadas repetidas para SetupDiEnumDeviceInterfaces retornarão informações sobre as interfaces associadas a todos os elementos de informações do dispositivo em DeviceInfoSet. Normalmente, esse ponteiro é retornado por SetupDiEnumDeviceInfo.

[in] InterfaceClassGuid

Um ponteiro para um GUID que especifica a classe de interface do dispositivo para a interface solicitada.

[in] MemberIndex

Um índice baseado em zero na lista de interfaces no conjunto de informações do dispositivo. O chamador deve chamar essa função primeiro com MemberIndex definido como zero para obter a primeira interface. Em seguida, incremente o MemberIndex repetidamente e recupere uma interface até que essa função falhe e GetLastError retorne ERROR_NO_MORE_ITEMS.

Se DeviceInfoData especificar um dispositivo específico, MemberIndex será relativo apenas às interfaces expostas por esse dispositivo.

[out] DeviceInterfaceData

Um ponteiro para um buffer alocado pelo chamador que contém, no retorno bem-sucedido, uma estrutura de SP_DEVICE_INTERFACE_DATA concluída que identifica uma interface que atende aos parâmetros de pesquisa. O chamador deve definir DeviceInterfaceData. cbSize para sizeof(SP_DEVICE_INTERFACE_DATA) antes de chamar essa função.

Retornar valor

SetupDiEnumDeviceInterfaces retornará TRUE se a função for concluída sem erro. Se a função for concluída com um erro, FALSE será retornado e o código de erro para a falha poderá ser recuperado chamando GetLastError.

Comentários

Chamadas repetidas para essa função retornam uma estrutura SP_DEVICE_INTERFACE_DATA para uma interface de dispositivo diferente. Essa função pode ser chamada repetidamente para obter informações sobre interfaces em um conjunto de informações do dispositivo que estão associadas a um determinado elemento de informações do dispositivo ou que estão associadas a todos os elementos de informações do dispositivo.

DeviceInterfaceData aponta para uma estrutura que identifica uma interface de dispositivo solicitada. Para obter informações detalhadas sobre uma interface, chame SetupDiGetDeviceInterfaceDetail. As informações detalhadas incluem o nome da interface do dispositivo que pode ser passada para uma função Win32, como CreateFile (descrito em SDK do Microsoft Windows documentação) para obter um identificador para a interface.

Consulte Visão geral das classes de interface do dispositivo para obter mais informações.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Microsoft Windows 2000 e versões posteriores do Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho setupapi.h (inclua Setupapi.h)
Biblioteca Setupapi.lib
DLL Setupapi.dll
Conjunto de APIs ext-ms-win-setupapi-classinstallers-l1-1-2 (introduzido no Windows 10, versão 10.0.14393)

Confira também

SetupDiEnumDeviceInfo

SetupDiGetClassDevs

SetupDiGetDeviceInterfaceDetail