SWbemServices.InstancesOfAsync 메서드

SWbemServices 개체의 InstancesOfAsync 메서드는 사용자가 지정한 조건에 따라 지정된 클래스의 인스턴스를 검색합니다.

이 메서드는 비동기 모드에서 호출됩니다. 자세한 내용은 메서드 호출을 참조하세요.

구문 설명은 스크립팅 API의 문서 규칙을 참조하세요.

구문

SWbemServices.InstancesOfAsync( _
  ByVal ObjWbemSink, _
  ByVal strClass, _
  [ ByVal iFlags ], _
  [ ByVal objWbemNamedValueSet ], _
  [ ByVal objWbemAsyncContext ] _
)

매개 변수

ObjWbemSink

인스턴스를 비동기식으로 수신하는 개체 싱크입니다. 개체를 수신할 SWbemSink 개체를 만듭니다.

strClass

필수 요소. 원하는 인스턴스의 클래스 이름을 포함하는 문자열입니다. 이 매개 변수는 공백일 수 없습니다.

iFlags [선택 사항]

호출 열거형의 깊이와 호출이 즉시 반환되는지 여부를 결정합니다. 이 매개 변수는 다음 값을 허용할 수 있습니다.

wbemQueryFlagShallow (1 (0x1))

지정된 부모 클래스의 직계 하위 클래스만 포함하도록 열거를 강제 적용합니다.

wbemQueryFlagDeep (0 (0x0))

이 매개 변수의 기본값입니다. 이 값은 열거형이 계층 구조의 모든 클래스를 포함하도록 합니다.

wbemFlagSendStatus (128 (0x80))

비동기 호출이 개체 싱크에 대한 OnProgress 이벤트 처리기로 상태 업데이트를 보내도록 합니다.

wbemFlagDontSendStatus (0 (0x0))

비동기 호출이 개체 싱크에 대한 OnProgress 이벤트 처리기로 상태 업데이트를 보내지 않도록 방지합니다.

wbemFlagUseAmendedQualifiers(131072 (0x20000))

WMI가 기본 클래스 정의와 함께 클래스 수정 데이터를 반환하도록 합니다. 자세한 내용은 WMI 클래스 정보 지역화를 참조하세요.

objWbemNamedValueSet [optional]

일반적으로 이는 정의되지 않습니다. 그렇지 않으면 요청을 서비스하는 공급자가 사용할 수 있는 컨텍스트 정보를 나타내는 요소가 있는 SWbemNamedValueSet 개체입니다. 컨텍스트 정보를 지원하거나 요구하는 공급자는 인식된 값 이름, 값의 데이터 형식, 허용된 값 및 의미 체계를 문서화해야 합니다.

objWbemAsyncContext [optional]

원래 비동기 호출의 소스를 식별하기 위해 개체 싱크로 반환되는 SWbemNamedValueSet 개체입니다. 동일한 개체 싱크를 사용하여 여러 비동기 호출을 수행하는 경우 이 매개 변수를 사용합니다. 이 매개 변수를 사용하려면 SWbemNamedValueSet 개체를 만들고 SWbemNamedValueSet.Add 메서드를 사용하여 수행 중인 비동기 호출을 식별하는 값을 추가합니다. 이 SWbemNamedValueSet 개체는 개체 싱크로 반환되며 SWbemNamedValueSet.Item 메서드를 사용하여 호출 원본을 추출할 수 있습니다.

반환 값

이 메서드는 값을 반환하지 않습니다. 성공하면 싱크는 인스턴스당 OnObjectReady 이벤트를 수신합니다. 마지막 인스턴스 이후 개체 싱크는 OnCompleted 이벤트를 수신합니다.

오류 코드

InstancesOfAsync 메서드가 완료되면 Err 개체에 다음 목록의 오류 코드 중 하나가 포함될 수 있습니다.

wbemErrAccessDenied - 2147749891(0x80041003)

현재 사용자는 지정된 클래스의 인스턴스를 볼 수 있는 권한이 없습니다.

wbemErrFailed - 2147749889(0x80041001)

지정되지 않은 오류가 발생했습니다.

wbemErrInvalidClass - 2147749904(0x80041010)

지정된 클래스가 잘못되었습니다.

wbemErrInvalidParameter - 2147749896(0x80041008)

지정된 매개 변수가 유효하지 않습니다.

wbemErrOutOfMemory - 2147749894(0x80041006)

메모리가 부족하여 작업을 완료할 수 없습니다.

설명

이 호출은 즉시 반환됩니다. 요청된 개체 및 상태는 objWbemSink에 지정된 싱크에 전달된 콜백을 통해 호출자에게 반환됩니다. 반환할 때 각 개체를 처리하려면 objWbemSink.OnObjectReady 이벤트 서브루틴을 만듭니다. 모든 개체가 반환되면 objWbemSink.OnCompleted 이벤트의 구현에서 최종 처리를 수행할 수 있습니다.

비동기 콜백을 사용하면 인증되지 않은 사용자가 싱크에 데이터를 제공할 수 있습니다. 이렇게 하면 스크립트 및 애플리케이션에 보안 위험이 발생합니다. 위험을 제거하려면 비동기 호출에서 보안 설정을 참조하세요.

InstancesOfAsync 메서드는 클래스 개체에 대해서만 작동합니다. 반환된 열거자에 0 요소가 있는 것은 오류가 아닙니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista
지원되는 최소 서버
Windows Server 2008
헤더
Wbemdisp.h
유형 라이브러리
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemServices
IID
IID_ISWbemServices

추가 정보

SWbemServices

메서드 호출