支援 Win32_PerfRawData 類別
撰寫從 Win32_PerfRawData衍生類別的高效能提供者時,您必須遵循特定慣例,讓 WMI 可以將資料提供給屬性值。
注意
不建議在任何版本的 Windows 作業系統上撰寫 WMI 高效能提供者來建立效能計數器。 如需詳細資訊,請參閱 將執行個體提供者設為High-Performance提供者和 效能程式庫和 WMI。
下列程式描述如何使用高效能提供者來支援 Win32_PerfRawData 類別。
支援 Win32_PerfRawData 類別
在 Root\CIMv2 命名空間中建立您的類別。
類別必須衍生自 Win32_PerfRawData ,並將 Hiperf 限定詞設定為 TRUE。 您也可以將 WDM (驅動程式) 效能資料類別新增至 root\wmi 命名空間。 如需為 WMI 建立自己的類別的詳細資訊,請參閱 設計 Managed 物件格式 (MOF) 類別。
在 提供者 限定詞中將提供者指定為 「NT5_GenericPerfProvider_V1」。
指定下列類別層級限定詞:
- HiPerf
- 地區設定
- PerfDetail
- 提供者
如需詳細資訊,請參閱 效能計數器類別的類別限定詞。 請勿定義 GenericPerfCtr 限定詞,因為該限定詞會保留給將效能程式庫資料傳送至 WMI 類別的 ADAP 程式。
填入用來計算計數器類型公式的適當時間戳記和頻率屬性。
這些屬性繼承自 Win32_PerfRawData, 而且如果您要撰寫高效能提供者,您必須填寫這些屬性,才能在系統監視器中顯示類別。
在類別中包含名為 Name 的索引鍵屬性, (單一類別不需要此屬性) 。
您不得在類別上使用 Name 以外的任何索引鍵屬性。
建立資料類型為 DWORD (uint32) 或 QWORD (uint64) 。 這些屬性會在傳送至性能程式庫時變成效能計數器。
為類別中的所有屬性指定下列屬性層級限定詞:
- DisplayName
- CounterType
- DefaultScale
- 說明
- PerfDefault
- PerfDetail
如需詳細資訊,請參閱 效能計數器類別的屬性限定詞。 此外,Winperf.h 標頭檔包含您可以為 PerfDetail 和 CounterType指定的值。
WMI 使用 DisplayName、 Locale和 Description 限定詞進行當地語系化。 您必須將修改的限定詞新增至MS_409 (英文) 命名空間,讓系統監視器可以正確顯示您的類別資料。 這表示您可以藉由新增描述文字 的描述限定詞 並填入 DisplayName 值來修改屬性定義。 您也必須將修改的限定詞新增至類別支援的任何其他地區設定命名空間。 如果使用者從您未提供修改限定詞的地區設定要求資料,WMI 會預設為MS_409命名空間中指定的定義。
針對任何具有預期基底值的計數器型別的屬性,建立基底屬性。
此屬性緊接在 屬性後面,並命名為 propertyname**_Base**。 例如,Win32_PerfRawData_PerfDisk_LogicalDisk類別中平均屬性AvgDiskBytesPerRead需要名為AvgDiskBytesPerRead_Base的基底屬性來計算樣本數目。 若要判斷您想要使用的計數器類型是否需要基底屬性,請在 WMI 效能計數器類型中依名稱或十進位值找出計數器類型。
請確定您的提供者符合 效能需求。
相關主題