Documentatie ophalen voor onbewerkte en opgemaakte prestatiegegevensobjecten
In het volgende onderwerp wordt beschreven hoe u de on-line programmeerdocumentatie voor een dynamisch gemaakt onbewerkt of opgemaakt gegevensobject ophaalt.
WMI bevat een aantal objecten waarmee de prestaties worden bijgehouden. Klassen die zijn afgeleid van Win32_PerfRawData onbewerkte of niet-gecookeerde prestatiegegevens bevatten en worden ondersteund door de Prestatiemeteritemprovider. In tegenstelling daartoe bevatten klassen die zijn afgeleid van Win32_PerfFormattedData "verwerkte" of opgemaakte gegevens, en worden ze ondersteund door de Formatted Performance Data Provider.
Beide providers ondersteunen echter een aantal dynamisch gecreƫerde subklassen. Omdat de eigenschappen tijdens runtime worden toegevoegd, kunnen deze klassen niet-gedocumenteerde eigenschappen bevatten. U kunt de volgende code gebruiken om te bepalen welke eigenschappen een bepaalde dynamisch gemaakte klasse heeft.
Een beschrijving van een dynamisch gemaakte klasse ophalen
Maak een exemplaar van het item en stel de gewijzigde kwalificatie in op waar.
$osClass = New-Object System.Management.ManagementClass Win32_ClassNameHere $osClass.Options.UseAmendedQualifiers = $true
Haal de eigenschappen van de klasse op.
$properties = $osClass.Properties "This class has {0} properties as follows:" -f $properties.count
De eigenschappen weergeven.
foreach ($property in $properties) { "Property Name: {0}" -f $property.Name "Description: {0}" -f $($property.Qualifiers["Description"].Value) "Type: {0}" -f $property.Type "-------" }
Met de volgende code worden de eigenschapsbeschrijvingen opgehaald voor het opgegeven Win32_PerfFormattedData-object.
$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
"-------"
}