다음을 통해 공유


PdhLookupPerfNameByIndexA 함수(pdh.h)

지정된 인덱스 에 해당하는 성능 개체 이름 또는 카운터 이름을 반환합니다.

구문

PDH_FUNCTION PdhLookupPerfNameByIndexA(
  [in]      LPCSTR  szMachineName,
  [in]      DWORD   dwNameIndex,
  [out]     LPSTR   szNameBuffer,
  [in, out] LPDWORD pcchNameBufferSize
);

매개 변수

[in] szMachineName

지정된 성능 개체 또는 카운터가 있는 컴퓨터의 이름을 지정하는 Null로 끝나는 문자열입니다. 컴퓨터 이름은 DNS 이름 또는 IP 주소로 지정할 수 있습니다. NULL인 경우 함수는 로컬 컴퓨터를 사용합니다.

[in] dwNameIndex

성능 개체 또는 카운터의 인덱스입니다.

[out] szNameBuffer

성능 개체 또는 카운터의 null로 종료된 이름을 수신하는 호출자 할당 버퍼입니다. pcchNameBufferSize가 0이면 NULL로 설정합니다.

[in, out] pcchNameBufferSize

TCHARszNameBuffer 버퍼 크기입니다. 입력이 0이면 함수는 PDH_MORE_DATA 반환하고 이 매개 변수를 필요한 버퍼 크기로 설정합니다. 버퍼가 필요한 크기보다 큰 경우 함수는 이 매개 변수를 사용된 버퍼의 실제 크기로 설정합니다. 입력에서 지정된 크기가 0보다 크지만 필요한 크기보다 작으면 반환된 크기에 의존하여 버퍼를 다시 할당하면 안 됩니다.

반환 값

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

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

반환 코드 설명
PDH_MORE_DATA
szNameBuffer 버퍼가 카운터 이름을 포함할 만큼 크지 않습니다. pcchNameBufferSize가 입력에서 0인 경우 이 반환 값이 필요합니다. 입력에서 지정된 크기가 0보다 크지만 필요한 크기보다 작으면 반환된 크기에 의존하여 버퍼를 다시 할당하면 안 됩니다.
PDH_INVALID_ARGUMENT
매개 변수가 잘못되었거나 형식이 잘못되었습니다. 예를 들어 일부 릴리스에서는 입력에서 지정된 크기가 0보다 크지만 필요한 크기보다 작은 경우 이 오류를 수신할 수 있습니다.

설명

필요한 버퍼 크기( szNameBufferNULL 로 설정하고 pcchNameBufferSize 를 0으로 설정)를 처음으로 두 번 호출하고 데이터를 가져오는 데 두 번째로 이 함수를 호출해야 합니다.

Windows XP: 버퍼 및 버퍼 크기를 지정해야 합니다. 함수는 pcchNameBufferSize 를 사용된 버퍼의 필수 크기 또는 크기로 설정합니다. 버퍼가 너무 작으면 함수는 PDH_MORE_DATA 대신 PDH_INSUFFICIENT_BUFFER 반환합니다. 최대 문자열 크기(바이트)는 PDH_MAX_COUNTER_NAME * sizeof(TCHAR)입니다.

지정한 인덱스 값은 컴퓨터에 로드된 개체 또는 카운터와 연결된 인덱스 값 중 하나와 일치해야 합니다. 인덱스/이름 값 쌍은 다음 레지스트리 위치의 Counters 레지스트리 값에 저장됩니다.

HKEY_LOCAL_MACHINE
   \SOFTWARE
      \Microsoft
         \Windows NT
            \CurrentVersion
               \Perflib
                  Last Counter = highest counter index
                  Last Help = highest help index
                  \009
                     Counters = 2 System 4 Memory...
                     Help = 3 The System Object Type...
                  \supported language, other than English
                     Counters = ...
                     Help = ...

참고

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

요구 사항

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

추가 정보

PdhLookupPerfIndexByName