Verwenden von WMI
Sie können WMI aus Clientanwendungen und Skripts verwenden. Es stellt eine Infrastruktur bereit, die das Erkennen und Ausführen von Managementaufgaben erleichtert. Darüber hinaus können Sie den Satz möglicher Verwaltungsaufgaben hinzufügen, indem Sie eigene WMI-Anbieter erstellen.
Hinweis
Die WMI-Version der nächsten Generation zum Schreiben von Anwendungen und Skripts ist über die Windows Management Infrastructure (MI) verfügbar. Weitere Informationen finden Sie unter MI-Anbieter und -Clients.
In diesem Abschnitt werden folgende Themen erörtert:
Abrufen von Daten von WMI
Im folgenden Verfahren wird beschrieben, wie Sie Daten von WMI abrufen, indem Sie ein Skript oder eine Anwendung schreiben.
So rufen Sie Daten von WMI durch Schreiben eines Skripts oder einer Anwendung ab
Entscheiden Sie, welche Sprache verwendet werden soll. Weitere Informationen zur Skripterstellung finden Sie unter Erstellen eines WMI-Skripts. Weitere Informationen zu C++ finden Sie unter Erstellen einer WMI-Anwendung mit C++. Weitere Informationen zu C# oder WMI .NET finden Sie unter WMI .NET-Übersicht.
Sie können WMI-Daten in vielen Sprachen anzeigen oder bearbeiten. In der folgenden Tabelle sind die Themen aufgeführt, in denen beschrieben wird, wie die Skript- und Anwendungssprachen zum Abrufen von Daten verwendet werden.
Anwendungssprache | Thema |
---|---|
Skripts, die in Microsoft ActiveX-Skripthosting geschrieben wurden, einschließlich Visual Basic Scripting Edition (VBScript) und Perl |
Skript-API für WMI. Beginnen Sie mit Erstellen eines WMI-Skripts. Beispiele für Skriptcode finden Sie unter WMI-Aufgaben für Skripts und Anwendungen und im TechNet ScriptCenter-Skriptrepository. |
Windows PowerShell |
Getting Started with Windows PowerShell WMI PowerShell-Cmdlets, wie etwa Get-WmiObject. |
Visual Basic-Anwendungen |
Skript-API für WMI. |
Active Server Pages |
Skript-API für WMI. Beginnen Sie mit Erstellen von Active Server Pages für WMI. |
C++-Anwendungen |
COM-API für WMI. Beginnen Sie mit Erstellen einer WMI-Anwendung mit C++ und WMI-C++-Anwendungsbeispiele (enthält Beispiele). |
.NET Framework-Anwendungen, die in C#, Visual Basic .NET oder J# geschrieben wurden |
Klassen im Microsoft.Management.Infrastructure-Namespace. Hinweis: System.Management war der ursprüngliche Namespace, der verwalteten Code für WMI abdeckte. Die zugrunde liegende Technologie für System.Management ist jedoch im Allgemeinen langsamer als und nicht so gut skalierbar wie Microsoft.Management.Infrastructure. Daher wird nicht empfohlen, System.Management für neue Projekte zu verwenden. (Weitere Informationen zu System.Management finden Sie unter WMI .NET-Übersicht.) |
Stellen Sie sicher, dass Ihre Verbindungen mit Remotecomputern funktionieren.
Weitere Informationen finden Sie unter Herstellen einer Verbindung zu WMI auf einem Remotecomputer.
Für die Verbindung mit WMI auf Remotecomputern sind die korrekten Sicherheitseinstellungen erforderlich, wie in Wahrung der WMI-Sicherheit erläutert. In der folgenden Tabelle sind die Themen aufgeführt, in denen beschrieben wird, wie Sicherheitseinstellungen mit den Skript- und Anwendungssprachen konfiguriert werden.
Sprache Thema Skripts in einer beliebigen Sprache, Visual Basic-Anwendungen Festlegen der Sicherheitsstufe für Standardprozesse mit VBScript Active Server Pages Konfigurieren von IIS 5 und höher für WMI ASP-Skripting C++ Festlegen der Sicherheitsstufe für Standardprozesse mit C++ und Festlegen der Sicherheit auf IWbemServices und anderen Proxys Nach dem Herstellen einer Verbindung mit WMI können Sie Daten über Abfragen und Enumerationen abrufen.
Weitere Informationen finden Sie unter Bearbeiten von Klassen- und Instanzinformationen und Abfragen mit WQL.
Registrierungsdaten sind über WMI verfügbar. Sie können neue Schlüssel und Werte erstellen oder vorhandene ändern.
Weitere Informationen finden Sie unter Ändern der Systemregistrierung.
Sie können Ereignisbenachrichtigungen über WMI abonnieren, entweder vorübergehend zwischen Systemneustarts oder dauerhaft.
Weitere Informationen finden Sie unter Überwachen von Ereignissen und Empfangen eines WMI-Ereignisses.
Leistungsindikatordaten für ein System sind über WMI verfügbar.
Die Systemleistungsbibliothekszähler werden in WMI-Klassen konvertiert. Weitere Informationen finden Sie unter Überwachen von Leistungsdaten.
WMI-Aufgaben für Skripts und Anwendungen beschreibt, wie viele administrative Aufgaben mit WMI ausgeführt werden.
Bereitstellen von Daten für WMI
Im folgenden Verfahren wird beschrieben, wie Sie WMI Daten durch Schreiben eines Anbieters bereitstellen.
So stellen Sie WMI Daten durch Schreiben eines Anbieters bereit
Entscheiden Sie, welche Art von Anbieter geschrieben werden soll.
Sie können keinen WMI-Anbieter in VBScript schreiben. Sie können jedoch verschiedene andere Konzepte verwenden, um einen WMI-COM-Anbieter zu schreiben:
Verwenden des WMI ATL-Assistenten in Visual Studio.
Dabei wird ein nicht verwalteter COM-Anbieter erstellt. Weitere Informationen finden Sie unter Hinzufügen eines WMI-Instanzanbieters und Hinzufügen eines WMI-Ereignisanbieters.
Direkte Verwendung von COM in einer beliebigen integrierten Entwicklungsumgebung.
Dabei wird ein nicht verwalteter COM-Anbieter erstellt.
Verwenden von WMI im .NET Framework zum Erstellen eines Anbieters verwalteten Codes.
Dabei wird ein Anbieter verwalteten Codes erstellt. Anbieter verwalteten Codes können in jeder .NET Framework-Sprache geschrieben werden, sind einfacher zu schreiben als WMI-COM-Anbieter und können Daten aus den auf WMI CIM basierenden Klassen wie Win32-Klassen abrufen. Ein .NET Framework-WMI-Anbieter hat jedoch einige Einschränkungen. Weitere Informationen finden Sie unter Verwalten von Anwendungen mit WMI.
Die Verwendung der Anbieter-Framework-Klassen wird nicht empfohlen.
Das Anbieter-Framework wurde durch die WMI ATL-Assistenten ersetzt, wobei COM direkt oder .NET Framework-Anbieter verwendet werden. Das Erstellen eines WMI-COM-Anbieters mit den Anbieter-Framework-Klassen wird nicht mehr empfohlen. In der folgenden Tabelle sind die Themen aufgeführt, in denen beschrieben wird, wie COM- oder .NET Framework-Anbieter verwendet werden.
Anbieter Thema COM-Anbieter im selben Prozess wie WMI Bereitstellen von Daten für WMI COM-entkoppelter Anbieter Integrieren eines Anbieters in eine Anwendung .NET Framework-Anbieter in C# oder Visual Basic.NET Verwalten von Anwendungen mit WMI
Wichtige Aufgaben für WMI
Die folgenden Themen enthalten Informationen zur Verwendung von WMI zum Überwachen und Steuern von Unternehmenskomponenten.
Thema | Beschreibung |
---|---|
WMI-Aufgaben für Skripts und Anwendungen |
Beschreibt, wie Sie die richtige WMI-Klasse und -Verfahren finden, die in Skripts und Anwendungen verwendet werden, die allgemeine Computer- und Netzwerkverwaltungsaufgaben ausführen, z. B. das Hinzufügen einer neuen Druckerverbindung für einen Remotecomputer oder das Suchen aller installierten Hotfixes auf einem Computer. |
Erstellen einer WMI-Anwendung oder eines Skripts |
Jede Skriptsprache, z. B. VBScript oder Perl, die mit ActiveX-Objekten funktioniert, kann auf WMI-Daten zugreifen. Anwendungen können auf WMI zugreifen, indem sie in C++ die COM-API für WMI oder in Visual Basic die Typbibliothek Wbemdisp.tlb und die Skript-API für WMI verwenden. |
Herstellen einer Verbindung mit WMI auf einem Remotecomputer |
Beschreibt, wie Skripts, Anwendungen und Anbieter Verbindungen mit WMI auf Remotecomputern herstellen können, um Daten abzurufen oder Hardware und Software zu steuern. |
Herstellen einer Verbindung mit WMI auf einem Remotecomputer mithilfe von Windows PowerShell |
Beschreibt, wie Windows PowerShell zum Herstellen von Verbindungen mit WMI auf Remotecomputern verwendet wird, um Daten abzurufen oder Hardware und Software zu steuern. |
Überwachen von Ereignissen |
Beschreibt, wie Ereignisbenachrichtigungen durch Erstellen temporärer oder dauerhafter WMI-Ereignisconsumer abgerufen werden. |
Bereitstellen von Daten für WMI |
WMI stellt dynamische Managementdaten für Clientskripts und Anwendungen bereit, indem sie von Anbietern abgerufen werden. |
Abrufen und Bereitstellen von Daten auf einem 64 Bit-Computer |
Beschreibt, wie Sie auf nicht standardmäßige Anbieter zugreifen, sowie Überlegungen für Anbieterautoren auf 64 Bit-Systemen. |