다음을 통해 공유


CWbemProviderGlue::GetAllDerivedInstancesAsynch 메서드(wbemglue.h)

[CWbemProviderGlue 클래스는 현재 최종 상태로 간주되는 WMI 공급자 프레임워크의 일부이며 이러한 라이브러리에 영향을 주는 비보안 관련 문제에 대해 추가 개발, 개선 또는 업데이트를 사용할 수 없습니다. 모든 새로운 개발에서는 MI API를 사용해야 합니다.]

GetAllDerivedInstancesAsynch 메서드는 특정 공급자에서 지원되고 특정 기본 클래스에서 파생된 인스턴스 목록을 검색합니다. 이 메서드를 사용하면 공급자가 한 번에 하나의 instance 반환하여 비동기적으로 응답할 수 있습니다.

구문

HRESULT GetAllDerivedInstancesAsynch(
  LPCWSTR                    pszBaseClassName,
  Provider                   *pRequester,
  LPProviderInstanceCallback pCallback,
  LPCWSTR                    pszNamespace,
  MethodContext              *pMethodContext,
  void                       *pUserData
);

매개 변수

pszBaseClassName

목록을 반환해야 하는 기본 클래스의 이름입니다.

pRequester

pCallback이 가리키는 콜백 함수에 대한 포인터입니다.

pCallback

이 프로토타입을 사용하는 정적 함수에 대한 포인터입니다.

  static HRESULT WINAPI Classname::FunctionName(
     Provider *pProvider,
     CInstance *pInstance,
     MethodContext *pMethodContext,
     void *pUserData );

여기서 Classname은 클래스 공급자에서 파생된 클래스의 이름입니다. pRequester에서 정의한 "this" 포인터인 이 클래스의 instance. 이 함수는 pszClassName으로 지정된 공급자가 지원하는 각 instance 반환하기 위해 호출됩니다.

pszNamespace

pszClassName으로 지정된 클래스 이름의 네임스페이스입니다. 이 매개 변수가 NULL이면 기본 네임스페이스 root\cimv2가 사용됩니다.

pMethodContext

현재 컨텍스트에 대한 포인터입니다. 교착 상태를 방지하려면 컨텍스트를 제공해야 합니다. Provider::EnumerateInstances 또는 Provider::ExecQuery에서 공급자에 전달된 컨텍스트를 사용하거나 CInstance::GetMethodContext를 사용하여 instance 가져옵니다. 이 매개 변수는 NULL이 아니어야 합니다.

pUserData

pCallback이 가리키는 함수에 전달되는 사용자 정의 데이터에 대한 포인터입니다.

반환 값

메서드는 메모리 부족 또는 다른 HRESULT 오류 코드로 인해 작업이 실패한 경우 WBEM_E_OUT_OF_MEMORY 작업이 성공한 경우 WBEM_S_NO_ERROR 반환합니다.

설명

GetAllDerivedInstancesAsynch 메서드는 GetAllDerivedInstances와 거의 동일한 함수를 수행합니다. 그러나 하나의 임의로 큰 인스턴스 배열을 반환하는 대신 공급자는 공급자에서 instance 검색할 때마다 pCallBack으로 지정된 함수에 instance 전달합니다. 이렇게 하면 공급자가 더 적은 메모리를 사용하고 인스턴스를 클라이언트에 더 빨리 반환하기 시작할 수 있습니다.

이 메서드는 의미상 SELECT * FROM pszBaseClassName 쿼리와 동일합니다.

싱크에 대한 콜백은 클라이언트에서 요구하는 것과 동일한 인증 수준에서 반환되지 않을 수 있으므로 비동기 대신 반동기 통신을 사용하는 것이 좋습니다. 그러나 비동기 통신이 필요한 경우 메서드 호출을 참조하세요.

메서드를 반동적으로 사용하는 방법에 대한 자세한 내용은 CWbemProviderGlue::GetAllDerivedInstances메서드 호출을 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 wbemglue.h(FwCommon.h 포함)
라이브러리 FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll