Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein äußerst hilfreiches Feature von WMI ist die Fähigkeit, Daten abzufragen und Untergruppen der Informationen basierend auf vorgegebenen Kriterien abzurufen. In einem verteilten Szenario wird die Abfrage aus Effizienzgründen dicht an der Informationsquelle (auf dem Computer, von dem die Daten stammen) ausgeführt, und nur die Ergebnisse werden über die Verbindung übermittelt. Weitere Informationen zu Abfragen in WMI finden Sie in der WMI-Dokumentation in MSDN.
Im folgenden Codebeispiel wird demonstriert, wie eine Abfrage mit Hilfe der ManagementObjectSearcher-Klasse aufgerufen werden kann. Die Abfrage kann entweder als Zeichenfolge in dem von WMI unterstützten WQL-Format angegeben oder mit Hilfe einer der verfügbaren Abfrageklassen konstruiert werden. In diesem Fall wird die SelectQuery-Klasse verwendet, um eine Anforderung ausschließlich für die Systemumgebungsvariablen anzugeben. Die Ergebnisse werden in einer aufzählbaren Auflistung zurückgegeben.
using System;
using System.Management;
// This example demonstrates how to perform an object query.
public class QueryInstances {
public static int Main(string[] args) {
// Create a query for system environment variables only
SelectQuery query =
new SelectQuery("Win32_Environment", "UserName=\"<SYSTEM>\"");
// Initialize an object searcher with this query
ManagementObjectSearcher searcher =
new ManagementObjectSearcher(query);
// Get the resulting collection and loop through it
foreach (ManagementBaseObject envVar in searcher.Get()) {
Console.WriteLine("System environment variable {0} = {1}",
envVar["Name"], envVar["VariableValue"]);
}
return 0;
}
}
[Visual Basic]
Imports System
Imports System.Management
' This example demonstrates how to perform an object query.
Public Class QueryInstances
Overloads Public Shared Function Main(args() As String) As Integer
' Create a query for system environment variables only
Dim query As _
New SelectQuery("Win32_Environment", "UserName=""<SYSTEM>""")
' Initialize an object searcher with this query
Dim searcher As New ManagementObjectSearcher(query)
' Get the resulting collection and loop through it
Dim envVar As ManagementBaseObject
For Each envVar In searcher.Get()
Console.WriteLine("System environment variable {0} = {1}", _
envVar("Name"), envVar("VariableValue"))
Next envVar
Return 0
End Function
End Class
Siehe auch
Zugreifen auf Verwaltungsdaten mit Hilfe von System.Management | Abrufen von Verwaltungsobjektauflistungen | Abonnieren und Verwenden von Verwaltungsereignissen | Ausführen von Methoden für Verwaltungsobjekte | Remote- und Verbindungsoptionen | Verwenden von Objekten mit starkem Typ