在 KMDF 驱动程序中使用 WPP 软件跟踪
WPP 软件跟踪 使你能够添加跟踪消息来帮助调试驱动程序。 此外,框架的事件 记录器 还提供数百条可查看的跟踪消息。
可以使用 TraceView 或 Tracelog 查看 跟踪消息。 还可以 将跟踪消息发送到内核调试器。
将跟踪消息添加到驱动程序
若要将跟踪消息添加到基于框架的驱动程序,必须:
将 #include 指令添加到包含任何 WPP 宏的每个驱动程序源文件。 此指令必须 (TMH) 文件标识跟踪消息头。 文件名的格式必须为 <driver-source-file-name.tmh。>
例如,如果驱动程序包含两个名为 MyDriver1.c 和 MyDriver2.c 的源文件,则 MyDriver1.c 必须包含:
#include“MyDriver1.tmh”
和 MyDriver2.c 必须包含:
#include“MyDriver2.tmh”
在 Microsoft Visual Studio 中生成驱动程序时,WPP 预处理器将生成 。tmh 文件。
在头文件中定义 WPP_CONTROL_GUIDS 宏。 此宏为驱动程序的跟踪消息定义 GUID 和跟踪 标志 。
在驱动程序的 DriverEntry 例程中包含WPP_INIT_TRACING宏。 此宏激活驱动程序中的软件跟踪。
在驱动程序的 EvtDriverUnload 回调函数中包含WPP_CLEANUP宏。 此宏会停用驱动程序中的软件跟踪。
在驱动程序中使用 DoTraceMessage 宏或 宏的自定义版本 来创建跟踪消息。
打开驱动程序项目的“属性页”。 在“解决方案资源管理器”中右键单击驱动程序项目,并选择“属性” 。 在驱动程序的“属性页”中,单击“ 配置属性”,然后单击 “Wpp 跟踪”。 在“ 常规 ”菜单下,将 “运行 WPP 跟踪 ”设置为“是”。 在“ 文件选项” 菜单下,还应指定框架的 WPP 模板文件,例如:
{km-WdfDefault.tpl}*.tmh
若要在 Visual Studio 中为驱动程序项目指定其他 WPP 跟踪设置,请在解决方案资源管理器中右键单击驱动程序项目。 然后,按照 Properties-Configuration Properties-WPP>> 跟踪的链接操作。
若要指定跟踪配置文件,请使用“扫描配置数据”设置。 对于多个跟踪配置文件,请在“命令行”-> “其他选项”下添加它,如下所示
-scan:"$(KMDF_INC_PATH)\$(KMDF_VER_PATH)\wdftraceenums.h"
有关向驱动程序添加跟踪消息的详细信息,请参阅 将 WPP 宏添加到驱动程序。
使用 WPP 软件跟踪的示例驱动程序
AMCC5933、NONPNP、KMDF_FX2、PCIDRV、PLX9x5x 和串行 示例驱动程序 使用 WPP 软件跟踪。