Tracepdb の概要

トレース プロバイダー (ユーザー モード アプリケーションやカーネル モード ドライバーなど) は、効率を上げるためのバイナリ形式でトレース メッセージを格納します。 トレース メッセージを読み取るために、トレース プロバイダー コード内のトレース メッセージごとに指定された書式指定を適用する必要があります。

WPP プリプロセッサは、トレース プロバイダーのコードから書式設定命令を抽出し、トレース プロバイダーの PDB シンボル ファイルに追加します。

Tracepdb は、トレース プロバイダーの PDB シンボル ファイルの完全バージョンまたはプライベート バージョンから書式設定命令を抽出し (トレース書式設定命令はパブリック シンボル ファイルから削除されます)、ソース コード内の各トレース プロバイダーのトレース メッセージ形式 (.tmf) ファイルを作成します。 TMF ファイルは、プロバイダーのトレース メッセージの書式設定手順のみを含むテキスト ファイルです。

TraceViewTracefmt など、トレース メッセージを読み取り可能な形式で表示するツールでは、TMF ファイルを使用してトレース メッセージを解析および書式設定します。 また、プライベート シンボル ファイルを配布する代わりに、TMF ファイルをユーザーに配布することもできます。

Tracepdb は、コントロール GUID と、PDB ファイルで表される各トレース プロバイダーのトレース レベルを含むトレース (.mof) ファイルを作成します。 MOF ファイルの名前は、トレース プロバイダーのモジュール名です。

-c オプションを使用する場合、Tracepdb はソース コード内の各トレース プロバイダーのトレース メッセージ 制御 (.tmc) ファイルを作成することもできます。 TMC ファイルには、PDB ファイルで表される各トレース プロバイダーのコントロール GUID とトレース レベルが含まれています。 TMC ファイルの名前は、トレース プロバイダーの制御 GUID です。 TMC ファイルは、PDB ファイルなしで Traceview を使用する場合にのみ注意してください。

Tracepdb の唯一の機能は、TMF ファイルを作成することです。 ただし、BinPlace、TraceView、Tracefmt などの他のツールは、他の機能に加えて TMF ファイルを作成します。 Tracepdb の使用は、binplace -:tmf コマンド、traceview -parsepdb コマンド、tracefmt -i コマンドの使用と同じです。

Windows Vista より前のシステムでは、Tracepdb には mspdb70.dll と msvcr70.dll が必要です。 これらのファイルが Tracepdb.exe ファイルと同じディレクトリにない場合は、Tracepdb を使用する前に移動します。

Windows Vista より前のシステムでは、windows Driver Kit (WDK) (<プラットフォーム>が x86、amd64、または ia64) の bin\<Platform> サブディレクトリから、Tracefmt.exeが配置されているディレクトリにDbghelp.dll ファイルをコピーする必要があります。

イベント トレーシング の詳細については、Windows SDK のマニュアルを参照してください。 カーネル モード ドライバーとユーザー モード アプリケーションでイベント トレースを使用する方法については、「WPP ソフトウェア トレース」を参照してください。