PerfSetCounterRefValue 函式 (perflib.h)
匯報 計數器的值,其值為實際數據的指標。 提供者會使用此函式。
語法
ULONG PerfSetCounterRefValue(
[in] HANDLE Provider,
[in] PPERF_COUNTERSET_INSTANCE Instance,
[in] ULONG CounterId,
[in] PVOID Address
);
參數
[in] Provider
提供者的句柄。 使用 CTRPP 工具為您產生的句柄變數。 如需變數的名稱,請參閱提供者專案的符號屬性。
Windows Vista: PerfStartProvider 函式會傳回句柄。
[in] Instance
包含計數器集合實例 的PERF_COUNTERSET_INSTANCE 結構。 PerfCreateInstance 函式會傳回此指標。
[in] CounterId
可唯一識別實例區塊中要更新之計數器的標識碼。 標識元定義於計數器專案的 id 屬性中,而且必須符合實例區塊中其中一個PERF_COUNTER_INFO結構的 CounterId 成員。 使用 CTRPP 工具為您產生的計數器識別碼常數。 如需常數的名稱,請參閱計數器專案的符號屬性。
Windows Vista: 計數器標識碼常數無法使用。
[in] Address
實際計數器數據的指標。
如果 為 NULL,取用者會收到ERROR_NO_DATA。
若要指出計數器數據是以傳址方式存取,指令清單中的計數器宣告必須包含 name 屬性設定為 “reference” 的 counterAttribute 元素。
傳回值
如果函式成功,則會傳回ERROR_SUCCESS。
如果函式失敗,則傳回值是 系統錯誤碼。
備註
這是指定原始計數器數據的參考的便利函式。 若要自行更新原始計數器數據的參考,請使用 PERF_COUNTER_INFO 結構的 Offset 成員來存取特定計數器的計數器值。 Attrib 成員必須包含PERF_ATTRIB_BY_REFERENCE旗標。 PERF_COUNTERSET_INSTANCE結構區塊包含一或多個計數器信息結構。
根據計數器類型,指標必須參考 4 位元組或 8 位元組無符號整數。 收集計數器數據時,PERFLIB 會取值指標並傳回實際數據。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | perflib.h |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |