Abrufen der Dokumentation für Unformatierte und formatierte Leistungsdatenobjekte

Im folgenden Thema wird beschrieben, wie die Onlineprogrammierungsdokumentation für ein dynamisch erstelltes rohes oder formatiertes Datenobjekt abgerufen wird.

WMI enthält eine Reihe von -Objekten, die die Leistung nachverfolgen. Von Win32 _ PerfRawData abgeleitete Klassen enthalten unformatierte oder "nichtcookierte" Leistungsdaten und werden vom Leistungsindikatoranbieterunterstützt. Im Gegensatz dazu enthalten von Win32 _ PerfFormattedData abgeleitete Klassen "cooked" oder formatierte Daten und werden von der formatierten Leistung Datenanbieterunterstü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. Sie können den folgenden Code verwenden, um zu ermitteln, welche Eigenschaften eine bestimmte dynamisch erstellte Klasse aufweist.

So rufen Sie eine Beschreibung einer dynamisch erstellten Klasse ab

  1. 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
    
  2. Rufen Sie die Eigenschaften der -Klasse ab.

    $properties = $osClass.Properties  
    "This class has {0} properties as follows:" -f $properties.count
    
  3. 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  
"-------"  
}