IWbemServices::CreateClassEnum 메서드(wbemcli.h)

IWbemServices::CreateClassEnum 메서드는 선택 조건을 충족하는 모든 클래스에 대한 열거자를 반환합니다. 호출자는 반환된 열거자를 사용하여 클래스 정의를 검색하고 IEnumWbemClassObject::Next 를 호출하여 각 클래스 또는 클래스 블록을 가져와야 합니다. IEnumWbemClassObject::Release를 호출하여 완료됩니다.

참고 반환된 열거자에 0(0) 요소가 있는 것은 오류가 아닙니다.
 

구문

HRESULT CreateClassEnum(
  [in]  const BSTR           strSuperclass,
  [in]  long                 lFlags,
  [in]  IWbemContext         *pCtx,
  [out] IEnumWbemClassObject **ppEnum
);

매개 변수

[in] strSuperclass

NULL이 아니거나 비어 있지 않으면 부모 클래스 이름을 지정합니다. 이 클래스의 하위 클래스인 클래스만 열거자에 반환됩니다. NULL이거나 비어 있고 lFlag가 WBEM_FLAG_SHALLOW 경우 최상위 클래스만 반환됩니다(즉, 부모 클래스가 없는 클래스). NULL이거나 비어 있고 lFlag가WBEM_FLAG_DEEP 경우 네임스페이스 내의 모든 클래스가 반환됩니다.

[in] lFlags

다음 플래그는 이 메서드의 동작에 영향을 미칩니다. 이 매개 변수에 대해 제안된 값은 최상의 성능을 위해 WBEM_FLAG_RETURN_IMMEDIATELY 및 WBEM_FLAG_FORWARD_ONLY.

WBEM_FLAG_USE_AMENDED_QUALIFIERS

이 플래그가 설정되면 WMI는 현재 연결 로캘의 지역화된 네임스페이스에 저장된 수정된 한정자를 검색합니다. 설정하지 않으면 직접 네임스페이스에 저장된 한정자만 검색됩니다.

WBEM_FLAG_DEEP

이 플래그는 계층 구조의 모든 하위 클래스를 포함하도록 열거형을 강제하지만 이 클래스는 포함하지 않습니다.

WBEM_FLAG_SHALLOW

이 플래그는 이 클래스에서 찾을 수 없는 속성을 제공하는 하위 클래스의 모든 인스턴스를 제외하고 이 클래스의 순수 인스턴스만 포함하도록 열거형을 강제로 적용합니다.

WBEM_FLAG_RETURN_IMMEDIATELY

이 플래그는 반동기 호출을 발생합니다. 자세한 내용은 메서드 호출을 참조하세요.

WBEM_FLAG_FORWARD_ONLY

이 플래그를 사용하면 전달 전용 열거자가 반환됩니다. 일반적으로 정방향 전용 열거자는 더 빠르고 기존 열거자보다 적은 메모리를 사용하지만 복제 또는 재설정에 대한 호출은 허용하지 않습니다.

WBEM_FLAG_BIDIRECTIONAL

이 플래그를 사용하면 클라이언트가 열거자를 해제할 때까지 WMI가 열거형 개체에 대한 포인터를 유지합니다. 개체 포인터가 즉시 해제되지 않으므로 클라이언트가 많은 수의 개체를 열거하려고 하면 이 메서드가 WBEM_E_OUT_OF_MEMORYHRESULT로 인해 실패할 수 있습니다. lFlags 매개 변수를 0으로 설정하면 이 플래그는 기본적으로 암시됩니다.

[in] pCtx

일반적으로 NULL입니다. 그렇지 않으면 요청된 클래스를 제공하는 공급자가 사용할 수 있는 IWbemContext 개체에 대한 포인터입니다. 컨텍스트 개체의 값은 공급자에 대한 설명서에 지정해야 합니다. 이 매개 변수에 대한 자세한 내용은 WMI 호출을 참조하세요.

[out] ppEnum

열거자에 대한 포인터를 받습니다. 반환된 개체의 참조 수는 양수입니다. 호출자는 더 이상 필요하지 않은 경우 포인터에서 Release 를 호출해야 합니다.

반환 값

이 메서드는 메서드 호출의 상태 나타내는 HRESULT를 반환합니다. 다음 목록에는 HRESULT에 포함된 값이 나열되어 있습니다.

오류가 발생하면 COM 함수 GetErrorInfo에서 사용 가능한 정보를 얻을 수 있습니다.

네트워크 문제로 인해 Windows Management에 대한 원격 연결이 끊어지는 경우에도 COM 관련 오류 코드를 반환할 수 있습니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 wbemcli.h(Wbemidl.h 포함)
라이브러리 Wbemuuid.lib
DLL Fastprox.dll; Esscli.dll; FrameDyn.dll; FrameDynOS.dll; Ntevt.dll; Stdprov.dll; Viewprov.dll; Wbemcomn.dll; Wbemcore.dll; Wbemess.dll; Wbemsvc.dll; Wmipicmp.dll; Wmidcprv.dll; Wmipjobj.dll; Wmiprvsd.dll

추가 정보

IEnumWbemClassObject

IWbemServices

IWbemServices::CreateClassEnumAsync

오류 코드 검색