【问题标题】:How to enable Kernel Traces in WinDBg如何在 WinDBg 中启用内核跟踪
【发布时间】:2014-11-15 18:51:07
【问题描述】:

我已经提到了这个post

但没有帮助。 发行

ed Kd_DEFAULT_Mask 8

没有引起任何变化。而且我不知道如何在此处添加 DWORD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter 调用 DEFAULT,值为 8,因为我在注册表下看不到 Debug Print Filter

我有办法验证是否安装了我的硬件的调试驱动程序,但即使在验证之后,我似乎也无法在 windbg 中获取内核跟踪。 有一个工具叫 DbgView.exe 我启用了以下捕获选项:

Capture Win32
Capture Global Win32
Capture Kernel
Enable Verbose Kernel Output
Pass-through
Capture events

我希望这将启用内核跟踪但没有帮助。

有人能告诉我这样做的标准方法吗?

【问题讨论】:

    标签: windows kernel windbg


    【解决方案1】:

    如何添加调试打印键注册表

    :>reg 查询“HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter”

    错误:系统找不到指定的注册表项或值

    :>reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter" /V DEFAULT /t REG_DWORD /d 0xf

    操作成功完成

    :>reg 查询“HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter”

    ! REG.EXE 3.0版

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug 打印过滤器 默认 REG_DWORD 0xf

    【讨论】:

    • 我什至不知道您可以从 cmd 行中执行“reg add”,非常方便!
    • 这是“调试打印过滤器”,而不是“调试打印”
    【解决方案2】:

    您是否尝试将默认掩码设置为 0xF?在您更改 kd_default_mask 变量后,您确定您的驱动程序实际上正在生成跟踪消息吗?

    就基于注册表的方法而言,您只需创建调试打印过滤器键(如果它不存在)。

    【讨论】:

      【解决方案3】:

      您需要创建此密钥。该键默认不存在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug 打印过滤器 将默认值设置为 0xf。这将启用所有消息。

      更多信息可以在“设置组件过滤器掩码”中找到 https://docs.microsoft.com/de-de/windows-hardware/drivers/devtest/reading-and-filtering-debugging-messages#identifying-the-component-name

      还有一个说明如何为单个调试器会话设置此项

      【讨论】:

        猜你喜欢
        • 2011-06-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-24
        • 1970-01-01
        • 2014-03-20
        • 2010-10-09
        相关资源
        最近更新 更多