Sie sind hier: Startseite
 Liste aller Codebeispiele

WQL-Datenabfrage: Liste aller laufenden Dienste, Variante #2

Ein Beispiel zum Einsatz der Klasse System.Management.ManagementObjectSearcher aus der .NET-Klassenbibliothek.

Autor: Dr. Holger Schwichtenberg 

Beschreibung

Das zweite Listing zeigt die Variante unter Verwendung der Klasse SelectQuery.

Programmcodebeispiele Visual Basic .NET (VB.NET)

' ============================
' .NET-Code-Beispiel in Visual Basic .NET
' WQL-Datenabfrage: Liste aller laufenden Dienste
' Variante #2
' (C) Holger@Schwichtenberg.de
' ============================
Sub WMI_DataQuery2()
out("WQL-Datenabfrage: Liste aller laufenden Dienste")

Dim mo As ManagementObject
Dim suche As New ManagementObjectSearcher()
Dim menge As ManagementObjectCollection
Dim sq As SelectQuery

Const ABFRAGE = "select name,state from Win32_Service where state='running'"
' --- Abfrage definieren
sq = New SelectQuery(ABFRAGE)
suche = New ManagementObjectSearcher(sq)
' --- Abfrage ausführen
menge = suche.Get
' --- Ergebnisse ausgeben
For Each mo In menge
out("Dienst: " & mo("Name") & " Zustand: " & _
mo("state"))
Next
End Sub

Programmcodebeispiele CSharp (C#)

using System;
using System.Management;
using System.Windows.Forms;

using FCL_Buch;

namespace FCLBuch._SystemManagement {

public class SamplesWMIAbfragen {
public void WMI_DataQuery2() {

// WQL-Datenabfrage: Liste aller laufenden Dienste Variante #2
FclOutput.PrintOutSubHeader("WQL-Datenabfrage: Liste aller laufenden Dienste");

string abfrage = "select name,state from Win32_Service where state='running'";
// Abfrage definieren
SelectQuery sq = new SelectQuery(abfrage);
ManagementObjectSearcher suche = new ManagementObjectSearcher(sq);
// Abfrage ausführen
ManagementObjectCollection menge = suche.Get();
// Ergebnisse ausgeben
foreach (ManagementObject mo in menge)
FclOutput.PrintOut("Dienst: " + mo["Name"].ToString() + " Zustand: " + mo["state"].ToString());
}
}
}

Querverweise

 Definition '.NET Framework Class Library'  Verfügbarkeit der Klasse 'System.Management.ManagementObjectSearcher'  Übersicht über den FCL-Namensraum 'System.Management'  .NET & Visual Studio Community Portal