Mengambil Dokumentasi untuk Objek Data Performa Mentah dan Diformat

Topik berikut menjelaskan cara mengambil dokumentasi pemrograman on-line untuk objek data mentah atau berformat yang dibuat secara dinamis.

WMI berisi sejumlah objek yang melacak performa. Kelas yang berasal dari Win32_PerfRawData berisi data performa mentah, atau "tidak dimasak", dan didukung oleh penyedia Penghitung Kinerja. Sebaliknya, kelas yang berasal dari Win32_PerfFormattedData berisi "data yang dimasak", atau diformat, dan didukung oleh Penyedia Data Performa Yang Diformat.

Namun, kedua penyedia mendukung sejumlah kelas anak yang dibuat secara dinamis. Karena properti ditambahkan pada run-time, kelas-kelas ini mungkin berisi properti yang tidak terdokumentasi. Anda dapat menggunakan kode berikut untuk mengidentifikasi properti apa yang dimiliki kelas yang dibuat secara dinamis.

Untuk mengambil deskripsi kelas yang dibuat secara dinamis

  1. Buat instans item, dan atur kualifikasi yang diubah ke true.

    $osClass = New-Object System.Management.ManagementClass Win32_ClassNameHere  
    $osClass.Options.UseAmendedQualifiers = $true
    
  2. Ambil properti kelas .

    $properties = $osClass.Properties  
    "This class has {0} properties as follows:" -f $properties.count
    
  3. Tampilkan properti.

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

Kode berikut mengambil deskripsi properti untuk objek Win32_PerfFormattedData yang ditentukan.

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