Condividi tramite


Recupero della documentazione per oggetti dati sulle prestazioni non elaborati e formattati

Nell'argomento seguente viene descritto come recuperare la documentazione di programmazione on-line per un oggetto dati non elaborato o formattato creato in modo dinamico.

WMI contiene un numero di oggetti che tengono traccia delle prestazioni. Le classi derivate da Win32_PerfRawData contengono dati sulle prestazioni non elaborati o "non elaborati" e sono supportate dal provider del contatore delle prestazioni. Al contrario, le classi derivate da Win32_PerfFormattedData contengono dati "cucinati" o formattati e sono supportate dal provider di dati formattati per le prestazioni.

Tuttavia, entrambi i provider supportano una serie di classi figlio create in modo dinamico. Poiché le proprietà vengono aggiunte in fase di esecuzione, queste classi possono contenere proprietà non documentate. È possibile usare il codice seguente per identificare le proprietà di una determinata classe creata in modo dinamico.

Per recuperare una descrizione di una classe creata dinamicamente

  1. Creare un'istanza dell'elemento e impostare il qualificatore modificato su true.

    $osClass = New-Object System.Management.ManagementClass Win32_ClassNameHere  
    $osClass.Options.UseAmendedQualifiers = $true
    
  2. Recuperare le proprietà della classe .

    $properties = $osClass.Properties  
    "This class has {0} properties as follows:" -f $properties.count
    
  3. Visualizzare le proprietà.

    foreach ($property in $properties) {  
    "Property Name: {0}" -f $property.Name  
    "Description:   {0}" -f $($property.Qualifiers["Description"].Value)  
    "Type:          {0}" -f $property.Type  
    "-------"
    }
    

Il codice seguente recupera le descrizioni delle proprietà per l'oggetto Win32_PerfFormattedData specificato.

$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  
"-------"  
}