PerfAddCounters 함수(perflib.h)
지정된 쿼리에 성능 카운터 사양을 추가합니다.
구문
ULONG PerfAddCounters(
[in] HANDLE hQuery,
[in, out] PPERF_COUNTER_IDENTIFIER pCounters,
DWORD cbCounters
);
매개 변수
[in] hQuery
성능 카운터 사양을 추가하려는 쿼리에 대한 핸들입니다.
[in, out] pCounters
추가하려는 성능 카운터 사양에 대한 포인터입니다.
cbCounters
pCounters 매개 변수가 지정하는 버퍼의 크기(바이트)입니다.
반환 값
함수가 성공하면 ERROR_SUCCESS 반환합니다.
함수가 실패하면 반환 값은 시스템 오류 코드입니다.
설명
pCounters 매개 변수는 PERF_COUNTER_IDENTIFIER 블록 시퀀스를 가리킵니다. 각 PERF_COUNTER_IDENTIFIER 블록은 PERF_COUNTER_IDENTIFIER 구조체로 구성되며, 필요에 따라 null로 끝나는 UTF-16LE instance 이름 문자열과 블록의 크기를 8바이트의 배수로 만드는 패딩으로 구성됩니다.
각 PERF_COUNTER_IDENTIFIER 블록에 대해 다음을 수행합니다.
- PERF_COUNTER_IDENTIFIER 구조체의 CounterSetGuid 멤버를 쿼리할 카운터 집합의 식별자로 설정합니다.
- PERF_COUNTER_IDENTIFIER 구조체의 Status 멤버를 0으로 설정합니다.
- PERF_COUNTER_IDENTIFIER 구조체의 Size 멤버를 PERF_COUNTER_IDENTIFIER 구조체, instance 이름 및 안쪽 여백을 포함하여 PERF_COUNTER_IDENTIFIER 블록의 크기(바이트)로 설정합니다. Size 값은 8의 배수여야 합니다.
- PERF_COUNTER_IDENTIFIER 구조체의 CounterId 멤버를 쿼리에서 반환해야 하는 카운터의 식별자로 설정합니다. 모든 카운터를 반환하려면 CounterId 를 PERF_WILDCARD_COUNTER 설정합니다.
- PERF_COUNTER_IDENTIFIER 구조체의 InstanceId 멤버를 쿼리에서 반환해야 하는 instance 식별자로 설정합니다. instance 식별자를 기반으로 필터링을 수행하지 않아야 하는 경우 InstanceId를 PERF_WILDCARD_COUNTER 설정합니다.
- PERF_COUNTER_IDENTIFIER 구조체의 Index 멤버를 0으로 설정합니다.
- PERF_COUNTER_IDENTIFIER 구조체의 Reserved 멤버를 0으로 설정합니다.
- PERF_COUNTER_IDENTIFIER 구조 바로 뒤의 instance 이름을 포함합니다.
- 카운터 집합이 단일 instance 경우 instance 이름을 설정하지 마세요. 이 경우 PERF_COUNTER_IDENTIFIER 구조체의 Size 멤버 값은 PERF_COUNTER_IDENTIFIER 구조체의 크기여야 합니다.
- 카운터 집합이 다중 instance 경우 instance 이름을 설정해야 합니다. instance 이름을 기준으로 성능 카운터 사양을 필터링하지 않으려면 PERF_WILDCARD_INSTANCE instance 이름으로 사용합니다.
요구 사항
지원되는 최소 클라이언트 | Windows 10 버전 1607 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2016 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | perflib.h |
라이브러리 | AdvAPI32.lib |
DLL | AdvAPI32.dll |