了解 Tracefmt

跟踪提供程序以二进制形式记录跟踪消息,以提高效率。 要以可读形式显示跟踪消息,Tracefmt 会对每条消息应用格式化说明,然后显示消息或将其保存到文本文件中。

提示

TraceView 以更易于使用的图形用户界面提供与 Tracefmt 相同的功能。

跟踪消息的格式说明包含在使用 WPP 软件跟踪的跟踪提供程序的源代码中,然后编译到跟踪提供程序的专用或完整版本 PDB 符号文件中。 WPP 预处理器从专用符号中提取格式化指令,并将其放入跟踪消息格式 (.tmf) 文件中,以供提供程序使用。

要格式化跟踪消息,Tracefmt 需要一个 TMF 文件。 可以向 Tracefmt 提供 TMF 文件,或直接让 Tracefmt 创建一个 TMF 文件。 使用以下任一方法提供所需的输入。

使用 Default.tmf。 由于大多数应用程序和驱动程序都使用标准消息格式,因此可以使用 WDK 中包含的文件 Default.tmf 中的信息来格式化它们的消息。

提供一个 TMF 文件。 可以通过提供路径和文件名来指定特定的 TMF 文件。

提供 TMF 文件目录的路径。 Tracefmt 可以使用跟踪消息的 message GUID,在 TMF 文件目录中识别包含消息格式说明的 TMF 文件。 TMF 文件名由带有 .tmf 文件扩展名的消息 GUID 组成。

指示 Tracefmt 创建一个 TMF 文件。 Tracefmt 可使用跟踪提供程序的映像文件(.exe、.dll 或 .sys)在目录中或通过使用内部符号服务器查找跟踪提供程序的专用 PDB 符号文件。 然后,它会根据 PDB 文件中的数据创建一个 TMF 文件,并使用 TMF 文件格式化跟踪消息。 在创建 TMF 文件时,Tracepdb 会创建一个 MOF (.mof) 文件,其中包含控制 GUID 和 PDB 文件中表示的每个跟踪提供程序的跟踪级别。 MOF 文件的名称是跟踪提供程序的模块名称。

格式化跟踪消息后,Tracefmt 可在命令行显示跟踪消息,并可创建以下文件:

  • 格式化跟踪消息的输出文件。 消息会按照跟踪提供程序生成的顺序显示。 每条消息前面有一个跟踪前缀。 有关信息,请参阅跟踪消息前缀

  • 摘要消息文件,包含生成跟踪消息的跟踪会话的相关信息。

有关事件跟踪的详细信息,请参阅 Microsoft Windows SDK 文档。 有关在驱动程序中使用事件跟踪的信息,请参阅 WPP 软件跟踪