在debuggingen_windows_7_checked_build_dvd_x86_398742时,我没有收到debugging信息。 我甚至无法看到我自己的跟踪信息(ATLTRACE)。 相反,Windows XP Checked就像一个魅力。 debugging会话启动时出现“Bad QueryIdType:5”msg。内核debugging显然设置正确。 请帮忙…
我能够从WINDOWS 7 32位windbg内修复它:
ed Kd_DEFAULT_Mask 8
根据msdn的文章,你也可以使用注册表,但是你必须重新引导它才能生效。 在值为8
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter
下创建一个名为DEFAULT
的DWORD键。
最新的微软文档可以在这里找到: http : //msdn.microsoft.com/en-us/library/windows/hardware/ff551519(v=vs.85).aspx
好的,我在这里找到了解决办法。 它可以帮助人们:
问题:在Windows Vista上运行驱动程序时,您的DbgPrint或KdPrint消息不会显示在WinDbg(或KD)中。
原因? Vista自动将DbgPrint和朋友映射到DbgPrintEx。 现在,您可能还记得,DbgPrintEx允许您通过函数调用中的组件名称和级别以及注册表或内存中的相关过滤器掩码来过滤消息,从而控制将消息发送到内核调试器的条件。
在Vista中,DbgPrint和KdPrint被映射到组件“DPFLTR_DEFAULT_ID”和级别“DPFLTR_INFO_LEVEL”。 当然,在Vista中,xxx_INFO_LEVEL输出默认是禁用的。 所以,默认情况下,您的DbgPrint / KdPrint不会被发送到内核调试器。
如何解决它? 两个选择:
默认启用DbgPrint / KdPrint消息的输出 – 打开
HKLM\SYSTEM\CurrentControlSet\Session Manager\Debug Print Filter
。 在此键下,创建名称为DEFAULT
的值将此键的值设置为等于DWORD值8以启用xxx_INFO_LEVEL输出以及xxx_ERROR_LEVEL
输出。 或者尝试将掩码设置为0xF,以便获得所有输出。 您必须重新启动才能使这些更改生效。具体更改
DPFLTR
的组件过滤器桅杆。 在Vista / LH的早期版本中,通过在Kd_DPFLTR_MASK
(“ed Kd_DPFLTR_MASK”)处指定DWORD的掩码值,更改了默认的打印输出掩码。 在build 5308(Vista的2月份CTP)中,看起来mask的变量已经改变了,你需要在Kd_DEFAULT_MASK
(“ed Kd_DEFAULT_MASK)”设置DWORD的屏蔽值,在任何一种情况下,指定8来启用DPFLTR_INFO_LEVEL
输出DPFLTR_ERROR_LEVEL
输出,或0xF来获得所有级别的输出。有关使用DbgPrintEx / KdPrintEx的完整详细信息,请参阅WDK文档以了解有关使用DbgPrintEx / KdPrintEx的完整详细信息(请参阅驱动程序开发工具\用于调试驱动程序的工具\在驱动程序\调试代码概述中使用调试代码的路径)。 或者查看DbgPrintEx上的Windows调试工具文档(附录A)。
默认情况下,为了启用DbgPrint / KdPrint消息的输出,注册表路径是“HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Debug Print Filter”会话管理器位于Control下方。 Default值通常是0xf。 这使所有的消息。 要根据您的需要设置一个更好的适合的位掩码,信息位于https://docs.microsoft.com/de-de/windows-hardware/drivers/devtest/reading-and-filtering-debugging-messages#identifying-the-组件的名称
如果您使用Visual Studio 2015或2017,标准配置默认情况下不会设置此标志。 开始使用示例时,不要忘记在Debug-Target上设置这个额外的值。
所以这帮助我在使用Windbg的Windows 10环境中。
第二个问题是在Windows 10上使用devcon,如echo示例中所述https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/debug-universal-drivers-step-by-step -色-回声内核模式- #安装
在子弹“7找到建立的驱动程序文件”将所需的驱动程序文件传输到调试目标并使用devcon加载它们。 使用Windows 10,您还必须复制目录文件。 否则,devcon.exe将会按照说明失败。 因为你需要安装测试证书。 这通常在使用Visual Studio 2015/2017准备调试环境时完成。 请仔细检查certmgr。