다음을 통해 공유


PdhExpandWildCardPathA 함수(pdh.h)

지정된 컴퓨터 또는 로그 파일을 검사하고 와일드카드 문자가 포함된 지정된 카운터 경로와 일치하는 카운터 경로를 반환합니다.

데이터 원본에 핸들을 사용하려면 PdhExpandWildCardPathH 함수를 사용합니다.

구문

PDH_FUNCTION PdhExpandWildCardPathA(
  [in]      LPCSTR  szDataSource,
  [in]      LPCSTR  szWildCardPath,
  [out]     PZZSTR  mszExpandedPathList,
  [in, out] LPDWORD pcchPathListLength,
  [in]      DWORD   dwFlags
);

매개 변수

[in] szDataSource

로그 파일의 이름을 포함하는 Null로 종료된 문자열입니다. 함수는 로그 파일에 정의된 성능 개체 및 카운터를 사용하여 szWildCardPath 매개 변수에 지정된 경로를 확장합니다.

NULL인 경우 함수는 szWildCardPath에 지정된 컴퓨터를 검색합니다.

[in] szWildCardPath

확장할 카운터 경로를 지정하는 Null로 끝나는 문자열입니다. 카운터 경로의 최대 길이는 PDH_MAX_COUNTER_PATH.

szDataSource 매개 변수가 NULL이면 함수는 경로에 지정된 컴퓨터에서 일치하는 항목을 검색합니다. 경로가 컴퓨터를 지정하지 않으면 함수는 로컬 컴퓨터를 검색합니다.

[out] mszExpandedPathList

szWildCardPath의 와일드카드 사양과 일치하는 null로 종료된 카운터 경로 목록을 수신하는 호출자 할당 버퍼입니다. 목록은 두 개의 NULL 문자로 종료됩니다. pcchPathListLength가 0이면 NULL로 설정합니다.

[in, out] pcchPathListLength

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

참고 Windows XP에서 필요한 크기에 하나를 추가해야 합니다.
 

[in] dwFlags

확장하지 않을 와일드카드 문자를 나타내는 플래그입니다. 하나 이상의 플래그를 지정할 수 있습니다.

의미
PDH_NOEXPANDCOUNTERS
경로에 카운터 이름에 대한 와일드카드 문자가 포함된 경우 카운터 이름을 확장하지 마세요.
PDH_NOEXPANDINSTANCES
경로에 부모 instance, instance 이름 또는 instance 인덱스에 대한 와일드카드 문자가 포함된 경우 instance 이름을 확장하지 마세요.
PDH_REFRESHCOUNTERS
카운터 목록을 새로 고칩니다.

반환 값

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

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

반환 코드 설명
PDH_MORE_DATA
mszExpandedPathList 버퍼가 경로 목록을 포함할 만큼 크지 않습니다. pcchPathListLength가 입력에서 0인 경우 이 반환 값이 필요합니다. 입력에서 지정된 크기가 0보다 크지만 필요한 크기보다 작으면 반환된 크기에 의존하여 버퍼를 다시 할당하면 안 됩니다.
PDH_INVALID_ARGUMENT
매개 변수가 잘못된 경우 예를 들어 일부 릴리스에서는 입력에서 지정된 크기가 0보다 크지만 필요한 크기보다 작은 경우 이 오류를 수신할 수 있습니다.
PDH_INVALID_PATH
지정된 개체에 instance 포함되어 있지 않습니다.
PDH_MEMORY_ALLOCATION_FAILURE
이 함수를 지원하기 위해 메모리를 할당할 수 없습니다.
PDH_CSTATUS_NO_OBJECT
컴퓨터 또는 로그 파일에서 지정된 개체를 찾을 수 없습니다.

설명

필요한 버퍼 크기( mszExpandedPathListNULL 로 설정하고 pcchPathListLength 를 0으로 설정)를 처음으로 두 번 호출하고, 두 번째로 데이터를 가져와야 합니다.

PdhExpandWildCardPath 는 다음과 같은 방법으로 PdhExpandCounterPath 와 다릅니다.

  1. 확장할 와일드카드 문자를 제어할 수 있습니다.
  2. 로그 파일의 내용은 카운터 이름의 원본으로 사용할 수 있습니다.
일반적인 카운터 경로 형식은 다음과 같습니다.

\computer\object(parent/instance#index)\counter

카운터 경로의 부모, instance, 인덱스 및 카운터 구성 요소에는 유효한 이름 또는 와일드카드 문자가 포함될 수 있습니다. 컴퓨터, 부모, 인스턴스 및 인덱스 구성 요소에 대 한 모든 카운터 필요 하지 않습니다.

다음은 가능한 형식의 목록을입니다.

  • \\computer\object(parent/instance#index)\counter
  • \\computer\object(parent/instance)\counter
  • \\computer\object(instance#index)\counter
  • \\computer\object(instance)\counter
  • \\computer\object\counter
  • \object(parent/instance#index)\counter
  • \object(parent/instance)\counter
  • \object(instance#index)\counter
  • \object(instance)\counter
  • \object\counter
별표(*)를 와일드카드 문자(예: \object(*)\counter)로 사용합니다.

와일드 카드 문자를 부모 이름을 지정 하는 경우 지정 된 인스턴스 및 카운터 필드와 일치 하는 지정된 된 개체의 모든 인스턴스가 반환 됩니다. 예를 들어 \object(*/instance)\counter입니다.

인스턴스 이름에 와일드 카드 문자 지정을 지정 된 인덱스에 해당 하는 모든 인스턴스 이름이 와일드 카드 문자를 일치 하는 경우 지정 된 개체와 부모 개체의 모든 인스턴스가 반환 됩니다. 예를 들어 \object(parent/*)\counter입니다. 개체에 instance 포함되어 있지 않으면 오류가 발생합니다.

카운터 이름에 와일드 카드 문자는 지정 하는 경우 지정된 된 개체의 모든 카운터 반환 됩니다.

부분 카운터 경로 문자열 일치(예: "pro*")가 지원됩니다.

Windows Vista 이전: 부분 와일드카드 일치는 지원되지 않습니다.

참고

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

요구 사항

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

추가 정보

PdhEnumObjectItems

PdhEnumObjects

PdhExpandCounterPath

PdhExpandWildCardPathH