PerfQueryCounterInfo 函式 (perflib.h)

取得指定查詢中的計數器規格。

語法

ULONG PerfQueryCounterInfo(
  [in]            HANDLE                   hQuery,
  [out, optional] PPERF_COUNTER_IDENTIFIER pCounters,
                  DWORD                    cbCounters,
  [out]           LPDWORD                  pcbCountersActual
);

參數

[in] hQuery

您要取得計數器規格之查詢的句柄

[out, optional] pCounters

緩衝區的指標,其大小足以容納 cbCounters 參數指定的數據量,以位元組為單位。 如果 cbCounters 為 0,可能是 NULL。

cbCounters

pCounters 緩衝區的大小,以位元組為單位。

[out] pcbCountersActual

取得計數器規格所需的緩衝區大小。 意義取決於函式的值

返回。

函式傳回值 azurecountersActual 的意義
ERROR_SUCCESS 的數目

pCounters 所指定之緩衝區中儲存之計數器規格的相關信息位元組。

ERROR_NOT_ENOUGH_MEMORY The

儲存計數器規格資訊所需的緩衝區大小,以位元組為單位。 將緩衝區放大為必要的

重設大小並再次呼叫 函式。

其他 值未定義,不應使用。

傳回值

傳回碼 Description
ERROR_SUCCESS
函式已成功將計數器規格的所有資訊儲存在 pCounters 指定的緩衝區中。 以位元組為單位, 表示 實際儲存在緩衝區中之資訊量,以位元組為單位。
ERROR_NOT_ENOUGH_MEMORY
pCounters 指定的緩衝區不夠大,無法儲存計數器規格的所有資訊。 用來指出儲存所有資訊所需的緩衝區大小, 則其值 會指向此值。 將緩衝區放大為必要的

重設大小並再次呼叫 函式。

 

針對其他類型的失敗,傳回值是 系統錯誤碼

備註

計數器規格的相關信息會寫入 pCounters 指定為 PERF_COUNTER_IDENTIFIER 區塊序列的緩衝區。 大小以 位元組為單位

區塊序列會寫入 至 azureCountersActual。 每個 PERF_COUNTER_IDENTIFIER 區塊都包含

的 PERF_COUNTER_IDENTIFIER 結構,選擇性地後面接著以 Null 終止的 UTF-16LE

實例名稱,後面接著填補,讓 大小

PERF_COUNTER_IDENTIFIER 區塊是8個字節的倍數。 每個區塊的大小,包括PERF_COUNTER_IDENTIFIER結構、實例名稱和填補,都是由PERF_COUNTER_IDENTIFIER結構的 Size 成員所決定,這將會是 8 個字節的倍數。

規格需求

需求
最低支援的用戶端 Windows 10 版本 1607 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2016 [僅限傳統型應用程式]
目標平台 Windows
標頭 perflib.h
程式庫 AdvAPI32.lib
Dll AdvAPI32.dll

另請參閱

PERF_COUNTER_IDENTIFIER