Windows Management Instrumentation (WMI)
Eintrag zuletzt aktualisiert am: 08.06.2007
Die Windows Management Instrumentation (WMI) ist ein objektorientiertes Rahmenwerk und ein Protokoll zum Zugriff auf alle möglichen Arten von System- und
Netzwerkinformationen. WMI ermöglicht auch den Zugriff auf Informationen aus Quellen wie Registry,
Dateisystem und
Ereignisprotokollen, die durch andere Einzelkomponenten bereits abgedeckt sind. Während WMI den Vorteil der Einheitlichkeit bietet, sind die speziellen Komponenten im konkreten Anwendungsfall oft etwas einfacher zu handhaben. WMI ist weitaus komplexer als andere Komponenten.
Die Windows Management Instrumentation (WMI) ist ein Windows-Systembaustein zum Zugriff auf System- und
Netzwerkinformationen. Mit WMI kann man
- Systeminformationen über einzelne Systembausteine oder ganze Mengen von Systembausteinen auslesen
- Systeminformationen verändern
- Aktionen ausführen
- sich über Veränderungen im System informieren lassen.
WMI ist die Microsoft-Implementierung des
Web Based Enterprise Managements (
WBEM).
WBEM ist ein Standard der
Desktop Management Task Force (
DMTF) für das Netz- und Systemmanagement, also zur Verwaltung von
Netzwerk- und Systemressourcen (z.B.
Hardware, Software, Benutzer).
WBEM wurde ursprünglich von BMC Software, Cisco Systems, Compaq, Intel und Microsoft entwickelt und später an die
DMTF übergeben. Aus historischen Gründen findet man in WMI-Tools häufig noch die Bezeichnung
WBEM.
Der
FCL-Namespace
System.Management ist die .NET-Implementierung eines Meta-
Objektmodells für die Windows Management Instrumentation (WMI). Anders als bei
ADSI ist die WMI in .NET nicht ein
Wrapper für die entsprechende
COM-Komponente, sondern eine eigene Implementierung.
Meta-
Objektmodell versus
Wrapper
Ebenso wie in COM ist die .NET-Implementierung auch ein Meta-
Objektmodell. Für .NET gibt es aber zusätzlich einen sehr hilfreichen
Wizard, der eine
Wrapper-Klasse für eine WMI-Klasse generiert. Das reduziert nicht nur die Komplexität von WMI, sondern ermöglicht es sogar, die Intellisense-Unterstützung von
Visual Studio .NET (oder anderen Editoren, die die .NET-
Reflection zur Eingabeunterstützung nutzen) zu verwenden. Für einige Operationen (z.B. die Suche mit der
WMI Query Language) ist aber weiterhin das Meta-
Objektmodell zwingend erforderlich.