WDF 驱动程序调用跟踪程序 (WdfCallTracer)

可以使用 WdfCallTracer 实时跟踪和查看与框架的驱动程序通信。 WdfCallTracer 是功能的名称,而不是单独的可执行文件 (this.) 没有单独的二进制文件。

使用此功能,可以实时查看 DDI 和事件调用。

以下过程演示如何使用 WDK) 中提供的 KMDF 静态总线驱动程序示例 (Statbus.sys 的驱动程序通信来配置 WdfTester。 目前只能查看 DDI 调用。

设置 WDF 驱动程序调用跟踪器并生成示例驱动程序

  1. 安装 WdfTester 安装

  2. 生成 KMDF 静态总线驱动程序示例 (Statbus.sys) 。 KMDF 示例位于 %WDKRoot%\src\general\toaster\toastDrv\kmdf\bus\static 目录中。

  3. 将总线驱动程序示例复制到包含已安装的 WdfTester 文件的目录。 按照 KMDF Toaster 示例的说明加载驱动程序。 使用 DevCon (Devcon.exe) 或 添加新硬件向导

使用以下过程配置 TraceView,以便实时查看 DDI 和事件调用

在 TraceView 中创建新的日志会话

  1. 开始TraceView.exe (%WDKRoot%\tools\<platform>) 。

  2. 在“ 文件 ”菜单中,单击“ 创建新日志会话”。

  3. “创建新日志会话 ”对话框中,单击“ 添加提供程序”。

  4. 在“ 提供程序控件 GUID 设置 ”对话框中,单击“ CTL (控制 GUID) 文件”。

  5. 单击“ 浏览 ”按钮,然后从包含 WdfTester 文件和驱动程序的目录中选择“Wdftester.ctl 文件”。

  6. 单击" 确定"。

  7. “设置信息格式源选择 ”对话框中,单击“ 选择 TMF 文件”,然后单击“ 确定”。

  8. 在“ 跟踪格式信息设置 ”对话框中,单击“ 添加”, 然后浏览到 WdfTester 文件所在的目录。

  9. 依次单击“Wdftester.tmf”、“ 打开 ”以选择该文件,然后单击“ 完成”。

  10. 在“创建新日志会话”对话框中单击“下一步”,然后单击“完成”。

现在,你已准备好注册驱动程序并启用跟踪,以便可以查看驱动程序通信。

注册 KMDF 驱动程序并启用跟踪

  1. 打开命令提示符窗口,并切换到安装了 Wdftester 文件的目录。

  2. 在此示例中注册 KMDF 驱动程序 (,Statbus.sys) 使用 WdftesterScript.wsf 脚本。

    cscript WdftesterScript.wsf register statbus.sys
    
  3. 从设备管理器启用驱动程序,或插入硬件。 如果驱动程序已启用,请使用 设备管理器 将其禁用,然后再次启用它。

现在,应在 TraceView 应用程序中看到驱动程序通信。