TraceSetInformation 関数 (evntrace.h)

TraceSetInformation 関数は、イベント トレース セッション設定を構成します。

構文

ULONG WMIAPI TraceSetInformation(
  [in] TRACEHANDLE      SessionHandle,
  [in] TRACE_INFO_CLASS InformationClass,
  [in] PVOID            TraceInformation,
  [in] ULONG            InformationLength
);

パラメーター

[in] SessionHandle

構成するイベント トレース セッションのハンドル。 StartTrace 関数は、新しいトレースが開始されたときにこのハンドルを返します。 既存のトレースのハンドルを取得するには、ControlTrace を使用してトレースの名前に基づいてトレース プロパティを照会し、返されたEVENT_TRACE_PROPERTIESデータの Wnode.HistoricalContext フィールドからハンドルを取得します。

[in] InformationClass

有効または無効にする情報クラス。 クラスがキャプチャする情報は、イベントの拡張データ セクションに含まれます。 有効にできる情報クラスの一覧については、 TRACE_QUERY_INFO_CLASS 列挙を参照してください。

[in] TraceInformation

情報クラス固有のデータへのポインター。 情報クラスは、このパラメーターの内容を決定します。

[in] InformationLength

TraceInformation バッファー内のデータのサイズ (バイト単位)。

戻り値

関数が成功した場合、戻り値は ERROR_SUCCESS です。

関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。

  • ERROR_BAD_LENGTH

    プログラムでコマンドが発行されましたが、コマンドの長さが正しくありません。 InformationLength パラメーターが最小サイズより小さい場合、このエラーが返されます。

  • ERROR_INVALID_PARAMETER

    パラメーターが正しくありません。

  • ERROR_NOT_SUPPORTED

    要求はサポートされていません。

  • その他

    FormatMessage を使用して、返されたエラーのメッセージ文字列を取得します。

解説

StartTrace を呼び出した後、この関数を呼び出します。

InformationClass パラメーターが TraceStackTracingInfo に設定されている場合、この関数を呼び出すと、指定したカーネル イベントのスタック トレースが有効になります。 この関数の後続の呼び出しにより、スタック トレースが有効になっているカーネル イベントの以前の一覧が上書きされます。 スタック トレースを無効にするには、 InformationClassTraceStackTracingInfo に設定し、 InformationLength を 0 に設定して、この関数を呼び出します。

イベントの拡張データ セクションには、呼び出し履歴が含まれます。 StackWalk_Event MOF クラスは、拡張データのレイアウトを定義します。

通常、64 ビット コンピューターでは、ページ フォールトが許可されていない場合、特定のコンテキストでカーネル スタックをキャプチャすることはできません。 x64 でカーネル スタックのウォークを有効にするには、メモリ管理レジストリ値を DisablePagingExecutive 1 に設定します。 レジストリ値はDisablePagingExecutive、次のレジストリ キーの下にあります。 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management これは、システムのメモリ使用量が増加するため、一時的な診断目的でのみ行う必要があります。

要件

   
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー evntrace.h
Library Windows 8.1および Windows Server 2012 R2 の Sechost.lib。Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2 の Advapi32.lib
[DLL] Windows 8.1 と Windows Server 2012 R2 の Sechost.dll。Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2 での Advapi32.dll

関連項目

TRACE_QUERY_INFO_CLASS

TraceQueryInformation