Abrufen der Dokumentation für rohe und formatierte Leistungsdatenobjekte
Im folgenden Thema wird beschrieben, wie Sie die Online-Programmierdokumentation für ein dynamisch erstelltes rohes oder formatiertes Datenobjekt abrufen.
WMI enthält eine Reihe von Objekten, die die Leistung nachverfolgen. Von Win32_PerfRawData abgeleitete Klassen enthalten rohe oder nicht aufbereitete Leistungsdaten und werden vom Leistungsindikatoranbieter unterstützt. Im Gegensatz dazu enthalten von Win32_PerfFormattedData abgeleitete Klassen aufbereitete oder formatierte Daten und werden vom Anbieter für formatierte Leistungsdaten unterstützt.
Beide Anbieter unterstützen jedoch eine Reihe dynamisch erstellter untergeordneter Klassen. Da die Eigenschaften zur Laufzeit hinzugefügt werden, können diese Klassen nicht dokumentierte Eigenschaften enthalten. Mithilfe des folgenden Codes können Sie identifizieren, welche Eigenschaften eine bestimmte dynamisch erstellte Klasse aufweist.
So rufen Sie eine Beschreibung einer dynamisch erstellten Klasse ab
Erstellen Sie eine Instanz des Elements, und legen Sie den geänderten Qualifizierer auf „true“ fest.
$osClass = New-Object System.Management.ManagementClass Win32_ClassNameHere $osClass.Options.UseAmendedQualifiers = $true
Rufen Sie die Eigenschaften der Klasse ab.
$properties = $osClass.Properties "This class has {0} properties as follows:" -f $properties.count
Zeigen Sie die Eigenschaften an.
foreach ($property in $properties) { "Property Name: {0}" -f $property.Name "Description: {0}" -f $($property.Qualifiers["Description"].Value) "Type: {0}" -f $property.Type "-------" }
Der folgende Code ruft die Eigenschaftenbeschreibungen für das angegebene Win32_PerfFormattedData-Objekt ab.
$osClass = New-Object System.Management.ManagementClass Win32_PerfFormattedData_APPPOOLCountersProvider_APPPOOLWAS
$osClass.Options.UseAmendedQualifiers = $true
# Get the Properties in the class
$properties = $osClass.Properties
"This class has {0} properties as follows:" -f $properties.count
# display the Property name, description, type, qualifiers and instance values
foreach ($property in $properties) {
"Property Name: {0}" -f $property.Name
"Description: {0}" -f $($property.Qualifiers["Description"].Value)
"Type: {0}" -f $property.Type
"-------"
}