WMI용 COM API
WMI COM(구성 요소 개체 모델) API를 사용하여 관리 클라이언트 애플리케이션을 작성하거나 새 WMI 공급자만들 수 있습니다. COM API 참조는 고급 시스템 관리자뿐만 아니라 클라이언트 및 공급자 애플리케이션을 작성하는 개발자를 위한 정보를 제공합니다.
WMI 엔터프라이즈 관리 애플리케이션 작성에 대한 자세한 내용은 C++사용하여 WMI 애플리케이션 만들기를 참조하세요. WMI 공급자를 작성하는 방법에 대한 자세한 내용은 WMI데이터 제공을 참조하세요.
메모
WMI는 Microsoft Visual C++ 버전 6.0 이상 개발 시스템을 사용하는 C++ 개발만 지원합니다. 그러나 Borland 및 Watcom과 같은 다른 컴파일러를 사용할 수도 있습니다.
각 WMI 개체는 궁극적으로 IUnknown 인터페이스에서 상속된 인터페이스에서 상속됩니다. COM은 개체 구현자 또는 인터페이스가 메모리 관리, 매개 변수 관리 및 다중 스레딩과 같은 작업을 처리하는 방법을 결정합니다. COM을 준수하여 WMI용 COM API는 각 WMI 개체의 인터페이스에서 제공하는 기능을 지원하도록 합니다.
WMI는 다음 WMI 관련 COM 인터페이스를 통해 액세스됩니다.
인터페이스 | 묘사 |
---|---|
IEnumWbemClassObject | IWbemClassObject형식의 개체와 함께 작동하는 열거자입니다. IEnumVariant같은 표준 COM 열거자와 비슷합니다. |
IMofCompiler | Mofd.dll구현된 이 인터페이스는 MOF 컴파일러 및 MOF 파일을 컴파일하는 다른 애플리케이션에서 사용하는 COM 인터페이스를 제공합니다. |
IUnsecuredApartment | 클라이언트 프로세스에서 비동기 호출을 만드는 프로세스를 간소화하는 데 사용됩니다. |
IWbemBackupRestore | WMI 리포지토리의 내용을 백업하고 복원합니다. |
IWbemCallResult | IWbemServices 인터페이스의 반동기 호출을 데 사용됩니다. 이러한 호출을 수행하면 호출된 IWbemServices 메서드가 IWbemCallResult 개체와 함께 즉시 반환됩니다. |
IWbemCausalityAnalysis | 부모 요청에서 생성된 자식 요청을 추적합니다. |
IWbemClassObject | 클래스 정의와 클래스 개체 인스턴스를 모두 포함하고 조작합니다. 개발자는 이 인터페이스를 구현할 필요가 없습니다. WMI는 구현을 제공합니다. |
IWbemConfigureRefresher | 클라이언트 코드에서 열거자, 개체 및 중첩된 새로 고침을 새로 고침에 추가하거나 제거하는 데 사용됩니다. |
IWbemContext | 필요에 따라 Windows Management에 대한 IWbemServices 호출을 제출할 때 공급자에게 추가 컨텍스트 정보를 전달하는 데 사용됩니다. |
IWbemDecoupledBasicEventProvider | 분리된 공급자를 WMI에 등록합니다. |
IWbemDecoupledRegistrar | 분리된 공급자를 WMI와 연결합니다. 이 인터페이스를 사용하면 프로세스 호스팅 공급자가 인터페이스의 상호 운용성 수명을 정의하고 다른 공급자와 공존할 수 있습니다. |
IWbemEventConsumerProvider | 이벤트 소비자 공급자에 대한 기본 인터페이스를 제공합니다. 이 인터페이스와 FindConsumer 메서드를 통해 이벤트 소비자 공급자는 지정된 이벤트를 받아야 하는 이벤트 소비자를 나타낼 수 있습니다. |
IWbemEventProvider | 이벤트 공급자와의 통신을 시작하는 데 사용됩니다. |
IWbemEventProviderQuerySink | 필요에 따라 성능을 최적화하기 위해 현재 활성 상태인 이벤트 쿼리 필터 종류를 알고자 하는 이벤트 공급자가 구현합니다. |
IWbemEventProviderSecurity | 필요에 따라 해당 이벤트에 대한 소비자 액세스를 제한하려는 이벤트 공급자에 의해 구현됩니다. |
IWbemEventSink | 제한된 쿼리 집합을 사용하여 이벤트 공급자와의 통신을 시작합니다. 이 인터페이스는 IWbemObjectSink확장하여 보안 및 성능을 다루는 새로운 방법을 제공합니다. |
IWbemHiPerfProvider | 공급자가 새로 고칠 수 있는 개체 및 열거자를 제공할 수 있도록 합니다. |
IWbemHiPerfEnum | 인스턴스 개체의 열거에 대한 신속한 액세스를 제공하기 위해 새로 고침 작업에 사용됩니다. |
IWbemLocator | 특정 호스트 컴퓨터에서 WMI에 대한 IWbemServices 인터페이스에 대한 초기 네임스페이스 포인터를 가져옵니다. |
IWbemObjectAccess | 개체의 메서드 및 속성에 대한 액세스를 제공합니다. IWbemObjectAccess 개체는 새로 고침업데이트된 인스턴스에 대한 컨테이너입니다. |
IWbemObjectSink | IWbemServices 결과와 특정 유형의 이벤트 알림을 모두 수신하는 데 사용됩니다. |
IWbemObjectTextSrc | IWbemClassObject 인스턴스를 다른 텍스트 형식으로 변환하는 데 사용됩니다. |
IWbemPropertyProvider | WMI 클래스의 인스턴스에서 개별 속성 검색 및 업데이트를 지원합니다. |
IWbemProviderIdentity | 공급자가 동일한 CLSID 값으로 둘 이상의 이름(__Win32Provider여러 인스턴스)를 사용하여 자신을 등록하는 경우 이벤트 공급자가 구현합니다. 클래스는 사용해야 하는 명명된 공급자를 구분하기 위한 메커니즘을 제공합니다. |
IWbemProviderInit | 공급자를 초기화하는 데 사용됩니다. |
IWbemProviderInitSink | WMI에 의해 구현되고 초기화 상태를 보고하기 위해 공급자가 호출합니다. |
IWbemQualifierSet | 단일 속성 또는 전체 개체(클래스 또는 인스턴스)에 대한 명명된 한정자의 전체 집합에 대한 컨테이너 역할을 합니다. |
IWbemQuery | WQL(WMI 쿼리 언어) 쿼리를 구문 분석할 수 있는 진입점을 제공합니다. |
IWbemRefresher | 열거자 또는 새로 고침 개체와 같은 새로 고칠 수 있는 개체를 새로 고칠 수 있는 진입점을 제공합니다. |
IWbemServices | 클라이언트 및 공급자가 WMI 서비스에 액세스하는 데 사용됩니다. 인터페이스는 WMI에서만 구현되며 기본 WMI 인터페이스입니다. |
IWbemStatusCodeText | 오류 코드 또는 오류가 발생한 하위 시스템의 이름에 대한 텍스트 문자열 설명을 추출합니다. |
IWbemUnboundObjectSink | 모든 논리적 이벤트 소비자가 구현합니다. 이벤트 개체 배달을 허용하는 간단한 싱크 인터페이스입니다. |
메모
대부분의 WMI COM 함수는 명명된 상수로 문서화된 숫자 오류 코드를 반환합니다. 이러한 상수는 PSDK WMI\Include 폴더의 Wbemcli.h에 정의됩니다. 자세한 내용은 WMI 반환 코드 참조하세요.
COM 프로그래밍에 대한 다음 항목에 대한 자세한 내용은 구성 요소 개발참조하세요.
- 인터페이스 및 개체 디자인.
- IUnknown구현.
- 메모리 관리
- 참조 계산 처리.
관련 항목