Udostępnij za pośrednictwem


Interfejs API COM dla usługi WMI

Interfejs API modelu obiektów składników WMI (COM) umożliwia pisanie aplikacji klienckich zarządzania lub tworzenie nowego dostawcy usługi WMI . Dokumentacja interfejsu API modelu COM zawiera informacje dla zaawansowanych administratorów systemu, a także deweloperów, którzy piszą aplikacje klienckie i dostawcy.

Aby uzyskać więcej informacji na temat pisania aplikacji do zarządzania przedsiębiorstwami WMI, zobacz Creating a WMI Application Using C++. Aby uzyskać więcej informacji na temat pisania dostawcy WMI, zobacz Dostarczanie danych do usługi WMI.

Nuta

Usługa WMI obsługuje tylko programowanie w języku C++ przy użyciu programu Microsoft Visual C++ w wersji 6.0 lub nowszej. Można jednak również użyć innych kompilatorów, takich jak te z borland i Watcom.

 

Każdy z różnych obiektów WMI dziedziczy z interfejsu ostatecznie dziedziczone z interfejsu IUnknown. COM określa, w jaki sposób implementatory obiektów lub interfejsy obsługują zadania, takie jak zarządzanie pamięcią, zarządzanie parametrami i wielowątkowanie. Dzięki zgodności z modelu COM interfejs API com dla usługi WMI zapewnia obsługę funkcji udostępnianych przez interfejsy każdego obiektu WMI.

Dostęp do usługi WMI jest uzyskiwany za pośrednictwem następujących interfejsów COM specyficznych dla usługi WMI.

Interfejs Opis
IEnumWbemClassObject Moduł wyliczający, który współpracuje z obiektami typu IWbemClassObject. Jest on podobny do standardowych modułów wyliczania COM, takich jak IEnumVariant.
IMofCompiler Zaimplementowany przez Mofd.dllinterfejs ten udostępnia interfejs COM używany przez kompilator MOF i inne aplikacje kompilujące pliki MOF.
IUnsecuredApartment Służy do uproszczenia procesu wykonywania wywołań asynchronicznych z procesu klienta.
IWbemBackupRestore Wykonuje kopię zapasową i przywraca zawartość repozytorium WMI.
IWbemCallResult Służy do wywołań semisynchronicznych interfejsu IWbemServices. Podczas wykonywania takich wywołań metoda o nazwie IWbemServices zwraca się natychmiast wraz z obiektem IWbemCallResult.
IWbemCausalityAnalysis Śledzi żądania podrzędne generowane na podstawie żądania nadrzędnego.
IWbemClassObject Zawiera i manipuluje zarówno definicjami klas, jak i wystąpieniami obiektów klasy. Deweloperzy nie muszą implementować tego interfejsu; Usługa WMI zapewnia jej implementację.
IWbemConfigureRefresher Używany przez kod klienta do dodawania lub usuwania modułów wyliczających, obiektów i zagnieżdżonych modułów odświeżania.
IWbemContext Opcjonalnie służy do przekazywania dodatkowych informacji kontekstowych do dostawców podczas przesyłania IWbemServices wywołań do zarządzania systemem Windows.
IWbemDecoupledBasicEventProvider Rejestruje wyrejestrowanych dostawców za pomocą usługi WMI.
IWbemDecoupledRegistrar Kojarzy oddzielonych dostawców z usługą WMI. Ten interfejs umożliwia dostawcy hostowanym przez proces definiowanie okresu istnienia współdziałania interfejsu i współistnienia z innymi dostawcami.
IWbemEventConsumerProvider Udostępnia podstawowy interfejs dostawcy odbiorców zdarzeń. Za pomocą tego interfejsu i metody FindConsumer dostawca odbiorców zdarzeń może wskazać, którzy odbiorcy zdarzeń powinni otrzymywać dane zdarzenie.
IWbemEventProvider Służy do inicjowania komunikacji z dostawcą zdarzeń.
IWbemEventProviderQuerySink Opcjonalnie zaimplementowane przez dostawców zdarzeń, którzy chcą wiedzieć, jakie filtry zapytań zdarzeń są obecnie aktywne w celu optymalizacji wydajności.
IWbemEventProviderSecurity Opcjonalnie zaimplementowane przez dostawców zdarzeń, którzy chcą ograniczyć dostęp konsumentów do swoich zdarzeń.
IWbemEventSink Inicjuje komunikację z dostawcą zdarzeń przy użyciu ograniczonego zestawu zapytań. Ten interfejs rozszerza IWbemObjectSink, zapewniając nowe metody radzenia sobie z zabezpieczeniami i wydajnością.
IWbemHiPerfProvider Umożliwia dostawcom dostarczanie odświeżanych obiektów i modułów wyliczania.
IWbemHiPerfEnum Używane w operacjach odświeżania w celu zapewnienia szybkiego dostępu do wyliczenia obiektów wystąpień.
IWbemLocator Uzyskuje początkowy wskaźnik przestrzeni nazw do interfejsu IWbemServices dla usługi WMI na określonym komputerze hosta.
IWbemObjectAccess Zapewnia dostęp do metod i właściwości obiektu. Obiekt IWbemObjectAccess jest kontenerem dla wystąpienia zaktualizowanego przez refresher.
IWbemObjectSink Służy do odbierania wyników IWbemServices i niektórych typów powiadomień o zdarzeniach.
IWbemObjectTextSrc Służy do tłumaczenia wystąpień IWbemClassObject na i z różnych formatów tekstu.
IWbemPropertyProvider Obsługuje pobieranie i aktualizowanie poszczególnych właściwości w wystąpieniu klasy WMI.
IWbemProviderIdentity Zaimplementowane przez dostawcę zdarzeń, jeśli dostawca rejestruje się przy użyciu więcej niż jednej nazwa (wiele wystąpień __Win32Provider) z tą samą wartością CLSID. Klasa udostępnia mechanizm rozróżniania, którego nazwanego dostawcy należy użyć.
IWbemProviderInit Służy do inicjowania dostawców.
IWbemProviderInitSink Zaimplementowane przez usługę WMI i wywoływane przez dostawców w celu raportowania stanu inicjowania.
IWbemQualifierSet Działa jako kontener dla całego zestawu nazwanych kwalifikatorów dla pojedynczej właściwości lub całego obiektu (klasy lub wystąpienia).
IWbemQuery Udostępnia punkt wejścia, za pomocą którego można przeanalizować zapytanie języka zapytań WMI (WQL).
IWbemRefresher Zapewnia punkt wejścia, za pomocą którego można odświeżać obiekty, takie jak moduły wyliczania lub obiekty odświeżające, można odświeżyć.
IWbemServices Używane przez klientów i dostawców do uzyskiwania dostępu do usług WMI. Interfejs jest implementowany tylko przez usługę WMI i jest podstawowym interfejsem usługi WMI.
IWbemStatusCodeText Wyodrębnia opisy ciągów tekstowych kodów błędów lub nazwę podsystemu, w którym wystąpił błąd.
IWbemUnboundObjectSink Zaimplementowane przez wszystkich odbiorców zdarzeń logicznych. Jest to prosty interfejs ujścia, który akceptuje dostarczanie obiektów zdarzeń.

 

Nuta

Wiele funkcji com usługi WMI zwraca kody błędów liczbowych, które są udokumentowane jako nazwane stałe. Te stałe są definiowane w pliku Wbemcli.h w folderze PSDK WMI\Include. Aby uzyskać więcej informacji, zobacz kody powrotne usługi WMI.

 

Aby uzyskać więcej informacji na temat następujących tematów dotyczących programowania com, zobacz Component Development:

  • Interfejsy i projekt obiektów.
  • Implementowanie IUnknown.
  • Zarządzanie pamięcią
  • Obsługa zliczania odwołań.

dokumentacja usługi WMI