다음을 통해 공유


PdhAddCounterA 함수(pdh.h)

지정된 카운터를 쿼리에 추가합니다.

통사론

PDH_FUNCTION PdhAddCounterA(
  [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 구조체의 dwUserData 멤버에 액세스합니다.

[out] phCounter

쿼리에 추가된 카운터에 대한 핸들입니다. 후속 호출에서 이 핸들을 참조해야 할 수 있습니다.

반환 값

함수가 성공하면 ERROR_SUCCESS 반환합니다.

함수가 실패하면 반환 값은 시스템 오류 코드 또는 PDH 오류 코드. 다음은 가능한 값입니다.

반환 코드 묘사
PDH_CSTATUS_BAD_COUNTERNAME
카운터 경로를 구문 분석하거나 해석할 수 없습니다.
PDH_CSTATUS_NO_COUNTER
컴퓨터 또는 로그 파일에서 지정된 카운터를 찾을 수 없습니다.
PDH_CSTATUS_NO_COUNTERNAME
카운터 경로가 비어 있습니다.
PDH_CSTATUS_NO_MACHINE
경로에 컴퓨터 이름이 없고 함수가 로컬 컴퓨터 이름을 검색할 수 없습니다.
PDH_CSTATUS_NO_OBJECT
컴퓨터 또는 로그 파일에서 지정된 개체를 찾을 수 없습니다.
PDH_FUNCTION_NOT_FOUND
이 카운터에 사용할 계산 함수를 확인할 수 없습니다.
PDH_INVALID_ARGUMENT
하나 이상의 인수가 잘못되었습니다.
PDH_INVALID_HANDLE
쿼리 핸들이 잘못되었습니다.
PDH_MEMORY_ALLOCATION_FAILURE
함수를 완료하는 데 필요한 메모리를 할당할 수 없습니다.

발언

카운터 경로에 와일드카드 문자가 포함된 경우 와일드카드 문자와 일치하는 모든 카운터 이름이 쿼리에 추가됩니다.

아직 존재하지 않는 카운터 인스턴스가 지정된 경우 PdhAddCounter 오류 조건을 보고하지 않습니다. 대신 ERROR_SUCCESS 반환합니다. 이 동작의 이유는 존재하지 않는 카운터 인스턴스가 지정되었는지 여부 또는 존재하지 않는 카운터 인스턴스가 있는지 여부를 알 수 없지만 아직 만들어지지 않았기 때문입니다.

쿼리에서 카운터를 제거하려면 PdhRemoveCounter 함수를 사용합니다.

예제

예를 들어 검색 성능 카운터 또는 로그 파일성능 데이터를 읽는 참조하세요.

메모

pdh.h 헤더는 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 PdhAddCounter를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한 규칙을 참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 pdh.h
라이브러리 Pdh.lib
DLL Pdh.dll

참고 항목

PdhAddEnglishCounter

PdhBrowseCounters

PdhMakeCounterPath

PdhOpenQuery

PdhRemoveCounter