다음을 통해 공유


TdhGetProperty 함수(tdh.h)

이벤트 데이터에서 속성 값을 검색합니다.

구문

TDHSTATUS TdhGetProperty(
  [in]  PEVENT_RECORD             pEvent,
  [in]  ULONG                     TdhContextCount,
  [in]  PTDH_CONTEXT              pTdhContext,
  [in]  ULONG                     PropertyDataCount,
  [in]  PPROPERTY_DATA_DESCRIPTOR pPropertyData,
  [in]  ULONG                     BufferSize,
  [out] PBYTE                     pBuffer
);

매개 변수

[in] pEvent

EventRecordCallback 콜백에 전달된 이벤트 레코드입니다. 자세한 내용은 EVENT_RECORD 구조를 참조하세요.

[in] TdhContextCount

pTdhContext의 요소 수입니다.

[in] pTdhContext

WPP 또는 클래식 ETW 이벤트에 대한 컨텍스트 값의 배열입니다. 그렇지 않으면 NULL입니다. 자세한 내용은 TDH_CONTEXT 구조를 참조하세요. 배열에 중복 컨텍스트 형식이 포함되어서는 안됩니다.

[in] PropertyDataCount

pPropertyData의 데이터 설명자 구조 수입니다.

[in] pPropertyData

검색할 속성을 정의하는 PROPERTY_DATA_DESCRIPTOR 구조체의 배열입니다.

TdhGetPropertySize 함수를 호출하여 속성에 필요한 버퍼 크기를 검색한 경우 동일한 데이터 설명자를 사용할 수 있습니다.

구조체의 멤버가 아닌 속성을 검색하는 경우 단일 데이터 설명자를 지정할 수 있습니다. 구조체의 멤버인 속성을 검색하는 경우 두 데이터 설명자의 배열을 지정합니다(구조체는 다른 구조를 포함하거나 참조할 수 없음).

[in] BufferSize

pBuffer 버퍼의 크기(바이트)입니다. TdhGetPropertySize 함수를 호출할 때 pPropertySize 매개 변수에서 이 값을 가져올 수 있습니다.

[out] pBuffer

속성 데이터를 수신하는 사용자가 할당한 버퍼입니다.

반환 값

성공하면 ERROR_SUCCESS 반환합니다. 그렇지 않으면 이 함수는 다른 코드 외에도 다음 반환 코드 중 하나를 반환합니다.

반환 코드 설명
ERROR_NOT_FOUND
이벤트에 대한 스키마를 찾을 수 없거나 지정된 속성을 찾을 수 없습니다.
ERROR_INSUFFICIENT_BUFFER
pBuffer 버퍼가 너무 작습니다. 필요한 버퍼 크기를 얻으려면 TdhGetPropertySize를 호출합니다.
ERROR_INVALID_PARAMETER
하나 이상의 매개 변수가 잘못되었습니다.
ERROR_FILE_NOT_FOUND
매니페스트의 resourceFileName 특성에는 공급자 이진 파일의 위치가 포함됩니다. 매니페스트를 등록하면 위치가 레지스트리에 기록됩니다. TDH가 등록된 위치에 따라 이진 파일을 찾을 수 없습니다.
ERROR_WMI_SERVER_UNAVAILABLE
WMI 서비스를 사용할 수 없습니다.

설명

이벤트가 WPP 또는 클래식 ETW 이벤트인 경우 이벤트 정보를 구문 분석하는 데 사용되는 컨텍스트 정보를 지정할 수 있습니다. EVENT_HEADER_FLAG_TRACE_MESSAGE 플래그가 EVENT_HEADER Flags 멤버에 설정된 경우 이 이벤트는 WPP 이벤트입니다(EVENT_RECORDEventHeader 멤버 참조). EVENT_HEADER_FLAG_CLASSIC_HEADER 플래그가 설정된 경우 이벤트는 레거시 ETW 이벤트입니다.

WPP 이벤트 및 해당 데이터 형식에 대한 속성 목록은 PROPERTY_DATA_DESCRIPTOR.

예제

이 함수를 호출하여 최상위 속성 또는 구조체의 멤버 값을 검색하는 방법을 보여 주는 예제는 TdhGetProperty를 사용하여 이벤트 데이터 사용을 참조하세요.

요구 사항

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

추가 정보

TdhGetEventInformation

TdhGetPropertySize