다음을 통해 공유


CM_Enumerate_Classes 함수(cfgmgr32.h)

CM_Enumerate_Classes 함수는 반복적으로 호출될 때 각 클래스의 GUID를 제공하여 로컬 머신의 설치된 디바이스 클래스를 열거합니다.

구문

CMAPI CONFIGRET CM_Enumerate_Classes(
  [in]  ULONG  ulClassIndex,
  [out] LPGUID ClassGuid,
  [in]  ULONG  ulFlags
);

매개 변수

[in] ulClassIndex

머신의 디바이스 클래스 목록에 대한 호출자 제공 인덱스입니다. 자세한 내용은 설명 섹션을 참조하세요.

[out] ClassGuid

디바이스 클래스의 GUID를 수신하기 위한 GUID 구조체의 호출자 제공 주소(Microsoft Windows SDK 설명)입니다.

[in] ulFlags

Windows 8 호출자는 다음 플래그를 지정할 수 있습니다.

CM_ENUMERATE_CLASSES_INSTALLER

디바이스 설정 클래스를 열거합니다.

CM_ENUMERATE_CLASSES_INTERFACE

디바이스 인터페이스 클래스를 열거합니다.

그렇지 않으면 을 0으로 설정해야 합니다.

반환 값

작업이 성공하면 함수는 CR_SUCCESS 반환합니다. 그렇지 않으면 Cfgmgr32.h에 정의된 CR_ 접두사 오류 코드 중 하나를 반환합니다.

설명

로컬 머신의 디바이스 클래스를 열거하려면 ulClassIndex 값 0부터 시작하여 함수가 CR_NO_SUCH_VALUE 반환할 때까지 각 후속 호출을 통해 인덱스 값을 증가시키는 CM_Enumerate_Classes 반복적으로 호출합니다. 일부 인덱스 값은 잘못된 클래스 데이터를 포함하는 목록 항목을 나타낼 수 있으며, 이 경우 함수는 CR_INVALID_DATA 반환합니다. 이 반환 값은 무시할 수 있습니다.

이 함수에서 가져온 클래스 GUID를 디바이스 설치 함수에 대한 입력으로 사용할 수 있습니다.

Windows 8 이상 운영 체제부터 호출자는 ulFlags 멤버를 사용하여 CM_Enumerate_Classes 반환해야 하는 디바이스 클래스를 지정할 수 있습니다. Windows 8 전에 CM_Enumerate_Classes 디바이스 설정 클래스만 반환했습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Microsoft Windows 2000 이상 버전의 Windows에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 cfgmgr32.h(Cfgmgr32.h 포함)
라이브러리 Cfgmgr32.lib
DLL Cfgmgr32.dll

추가 정보

CM_Enumerate_Classes_Ex