PdhAddEnglishCounterA 함수(pdh.h)
지정된 언어 중립적 카운터를 쿼리에 추가합니다.
구문
PDH_FUNCTION PdhAddEnglishCounterA(
[in] PDH_HQUERY hQuery,
[in] LPCSTR szFullCounterPath,
[in] DWORD_PTR dwUserData,
[out] PDH_HCOUNTER *phCounter
);
매개 변수
[in] hQuery
카운터를 추가할 쿼리에 대한 핸들입니다. 이 핸들은 PdhOpenQuery 함수에서 반환됩니다.
[in] szFullCounterPath
카운터 경로가 포함된 Null로 끝나는 문자열입니다. 카운터 경로 형식에 대한 자세한 내용은 카운터 경로 지정을 참조하세요. 카운터 경로의 최대 길이는 PDH_MAX_COUNTER_PATH.
[in] dwUserData
사용자 정의 값입니다. 이 값은 카운터 정보의 일부가 됩니다. 나중에 이 값을 검색하려면 PdhGetCounterInfo 함수를 호출하고 PDH_COUNTER_INFO 구조체의 dwQueryUserData 멤버에 액세스합니다.
[out] phCounter
쿼리에 추가된 카운터에 대한 핸들입니다. 후속 호출에서 이 핸들을 참조해야 할 수 있습니다.
반환 값
함수가 성공하면 ERROR_SUCCESS 반환합니다.
함수가 실패하면 반환 값은 시스템 오류 코드 또는 PDH 오류 코드입니다. 가능한 값은 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
카운터 경로를 구문 분석하거나 해석할 수 없습니다. |
|
컴퓨터 또는 로그 파일에서 지정된 카운터를 찾을 수 없습니다. |
|
카운터 경로가 비어 있습니다. |
|
경로에 컴퓨터 이름이 없고 함수가 로컬 컴퓨터 이름을 검색할 수 없습니다. |
|
컴퓨터 또는 로그 파일에서 지정된 개체를 찾을 수 없습니다. |
|
이 카운터에 사용할 계산 함수를 확인할 수 없습니다. |
|
하나 이상의 인수가 잘못되었습니다. |
|
쿼리 핸들이 잘못되었습니다. |
|
함수를 완료하는 데 필요한 메모리를 할당할 수 없습니다. |
설명
이 함수는 쿼리에 성능 카운터를 추가하는 언어 중립적 방법을 제공합니다. 반면 PdhAddCounter 함수에서 지정하는 카운터 경로는 지역화되어야 합니다.
아직 존재하지 않는 카운터 instance 지정되면 PdhAddEnglishCounter는 오류 조건을 보고하지 않습니다. 대신 ERROR_SUCCESS 반환합니다. 이 동작의 이유는 존재하지 않는 카운터 instance 지정되었는지 또는 존재하지 않지만 아직 만들어지지 않은지 여부를 알 수 없기 때문입니다.
쿼리에서 카운터를 제거하려면 PdhRemoveCounter 함수를 사용합니다.
- 쿼리 만들기
- 와일드카드가 포함된 문자열과 함께 PdhAddEnglishCounter 사용
- PdhAddEnglishCounter에서 반환된 카운터 핸들에서 PdhGetCounterInfo를 사용하여 지역화된 전체 경로(szFullPath)를 가져옵니다. 이 문자열은 여전히 와일드카드를 포함하지만 와일드카드가 아닌 부분은 이제 지역화됩니다.
- PdhExpandWildCardPath를 사용하여 와일드카드를 확장합니다.
- 각 결과 경로에서 PdhAddCounter 사용
참고
pdh.h 헤더는 PdhAddEnglishCounter를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | pdh.h |
라이브러리 | Pdh.lib |
DLL | Pdh.dll |