次の方法で共有


トレース メッセージのプレフィックスにソース行番号を含める方法

WPP は、各トレース メッセージに関するデータを自動的に記録します。その多くは既定では表示されません。 このデータには、トレース メッセージの関数名、ファイル名、ソース行番号、コンポーネント名、サブコンポーネント名、トレース レベルが含まれます。

各トレース メッセージの前にある トレース メッセージ プレフィックス にこの情報を表示するには、定義済みのプレフィックス変数を %TRACE_FORMAT_PREFIX% 環境変数に追加します。 Tracefmt およびその他のトレース コンシューマーは、トレース メッセージの書式設定時に %TRACE_FORMAT_PREFIX% を使用します。

たとえば、コンポーネント名、関数名、ファイル名、および行番号をトレース メッセージ プレフィックスに追加するには、%TRACE_FORMAT_PREFIX% の値に次の変数を追加します。

変数 説明
%!COMPNAME! コンポーネントの名前を追加します。
%!FUNC! 関数名を追加します。
%2 ソース ファイルの名前とトレース ステートメントの行番号を追加します。

%2 変数は、次の文字列を返します。

filename_NNN

ここで、ファイル名のドット (.) はアンダースコア (_) に置き換えられ、 NNN は行番号です。

次のStandard Edition T ステートメントの例では、 %!COMPNAME%!Func! および %2 変数を既定値の %TRACE_FORMAT_PREFIX% に設定します。 !s! サブパラメーターは、 %2 の値が文字列として書式設定されることを指定します。 追加された変数は太字で表示されます。

set TRACE\_FORMAT\_PREFIX="\[%9!d!\]%8!04X!.%3!04X!::%4!s! \[%1!s!\](**%!COMPNAME!**:**%!FUNC!**:**%2**!s!)"

結果として生成されるプリフィックスの形式は次のとおりです。 新しい要素はかっこで囲まれて表示されます。

[CPUNumber]ProcessID.ThreadID::SystemTime [MessageGUIDFriendlyName](ComponentName:FunctionName:Filename_LineNumber)

詳細な例については、「例 7: トレース メッセージ プレフィックスのカスタマイズ」を参照してください。 トレース メッセージ プレフィックスに表示できる定義済み変数の一覧については、「トレース メッセージ プレフィックス」を参照してください。