今天刚好手边有一个系统蓝屏的dump文件,下面一步一步来找到出错的地方。
1.用windbg打开dump文件,设置好符号路径等。
已经基本确定了是哪个驱动引起的问题。
2.执行!analyze -v命令,
这时候会把出问题的地方指出来,并且会把栈信息也列出来,并指出是哪一行的代码有问题。
3.确认一下,可以先用kp命令查看一下函数的输入参数,再用dv /t /v命令查看一下局部变量,确认了就是那一行指针为空导致的问题。
Use !analyze -v to get detailed debugging information.
BugCheck 7F, {8, 0, 0, 0}
c0000005 Exception in ext.Analyze debugger extension.
PC: 77c16fa3 VA: 01fe8000 R/W: 0 Parameter: 0001003f
2,关于调试窗口:view菜单下面有详细的列表:可以调出对应的窗口,默认的打开窗口是command窗口
3,基本调试命令:
r 可以显示系统崩溃时的寄存器,和最后的命令状态。
dd 显示当前内存地址,dd 参数:显示参数处的内存。
u 可以显示反汇编的指令
!analyze -v 显示分析的详细信息。
kb 显示call stack 内容
kv.bugcheck 可以显示出错的代码
本文介绍利用windbg调试系统蓝屏dump文件以找出出错位置的方法。先打开dump文件并设置符号路径,执行!analyze -v命令指出问题及栈信息,还可通过kp、dv /t /v命令确认。此外,介绍了调试窗口调出方法及r、dd等基本调试命令。

2万+

被折叠的 条评论
为什么被折叠?



