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 関数を呼び出した場合は、同じデータ記述子を使用できます。

構造体のメンバーではないプロパティを取得する場合は、1 つのデータ記述子を指定できます。 構造体のメンバーであるプロパティを取得する場合は、2 つのデータ記述子の配列を指定します (構造体に他の構造体を含めたり参照したりすることはできません)。

[in] BufferSize

pBuffer バッファーのサイズ (バイト単位)。 この値は、 TdhGetPropertySize 関数を呼び出すときに pPropertySize パラメーターから取得できます。

[out] pBuffer

プロパティ データを受け取るユーザー割り当てバッファー。

戻り値

成功した場合はERROR_SUCCESSを返します。 それ以外の場合、この関数は、他のリターン コードに加えて、次のいずれかのリターン コードを返します。

リターン コード 説明
ERROR_NOT_FOUND
イベントのスキーマが見つからないか、指定されたプロパティが見つかりませんでした。
ERROR_INSUFFICIENT_BUFFER
pBuffer バッファーが小さすぎます。 必要なバッファー サイズを取得するには、 TdhGetPropertySize を呼び出します。
ERROR_INVALID_PARAMETER
1 つ以上のパラメーターが無効です。
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
Library Tdh.lib
[DLL] Tdh.dll

こちらもご覧ください

TdhGetEventInformation

TdhGetPropertySize