dd nt!KeServiceDescriptorTable !drvobj 驱动名称 : The !drvobj extension displays detailed information about a DRIVER_OBJECT. u 反汇编 uf 反汇编函数 p 单步 bp(bu,bm) 断点 g .cls .reload u eip u eip l20 e 修改内存 r 修改寄存器 !process 0 0 calc.exe !process 0 0 system !process pid .formats 000ab048 !dd !pte !ptov !vtop !pfn ~s dg !pcr dv 显示变量值 源代码操作指令 .open,lsf,lsc,ls,l,lsp Ctrl+O打开并查看源文件 windbg源代码不能跟踪当前指令行时,reload image path。 Call Stack相关命令: k,kM .frame frame_number Windbg查看全局变量: a.直接把鼠标移动到全局变量上,就能显示值了. b.watch窗口里面,把那个全局变量输进去. 入侵模式调试 lmf 列出当前进程中加载的所有dll文件和对应的路径 bp `test.c:888` 在指定源程序行号下断. 行号有木有啊?状态栏。 显示进程| 切换进程| 1 s sx, sxd, sxe, sxi, sxn, sxr, sx- (Set Exceptions) The sx* commands control the action that the debugger takes when an exception occurs in the application that is being debugged, or when certain events occur.
--引http://www./2010/04/windbg-study-notes-order.html 去年看WinDbg帮助时随手记下来的一点资料,放上来保存一下,有新内容我会陆续更新上来。 1. 命令行前数字的含义 2. 命令输入时,支持UP,DOWN,TAB键联想,可以使用TAB键进行通配符的联想。 3. Enter键,在命令行没有命令输入时,执行上一条命令。 4. Ctrl+C 终止一段长时间执行的命令 5. .cls 清除命令行的显示结果。 6. WinDbg启动时增加-Q参数,在WinDbg退出后将不提示保存当前的工作环境的对话框。如果使用-QY将在退出WinDbg后,自动保存当前的配置环境。 7. 调试命令之执行命令 Ctrl+C 停止 gu 执行到当前函数结束, 快捷键shift+F11 t 单步执行 8.调试命令之断点 bl 列取已下的断点,以及其状态 bp/bu/bm 设置一个断点 ba 在指定地址设定访问方式断点,w(写方式),e(执行方式),r(只读方式),ba w4 0×123455 其中的4表示的字节宽度。ba下的地址断点一定要下到指令的开始处,否则不会执行。 9.调试命令之内存读写 e* 向内存写入数据,e后面的字符意思参考d* dt 显示指定变量的数据,比如结构体之类的 ds/dS 显示字符串,前者显示ascii,后者显示unicode的字符串。 dv 显示局部变量 !for_each_local dt @#Local 枚举当前栈空间所有局部变量值,注意@#Local的大小写。 !db/!dc/!dd/!dp/!du/!dw 读取物理内存 10. 调试命令之记存寄器 r 设置和修改寄存器 11. k命令显示调用栈 12. u/uf 显示反汇编 13. q 结束调试 14. lm 显示所加载的模块,lml列出所有已加载符号的模块。lmvm 列出所加载模块的详细信息 15. vertarget 显示当前加载进程实例的一些信息, 16. !peb (process environment block )显示当前进程的运行环境 17. .reload 重新加载模块的符号。在加载前可以先打开symbol的noisy模式(命令: !sym noisy),显示加载详细信息 18. !runaway显示当前进程中线程运行情况 19. dds用来显示当前内存的数据和相对应该的符号 20. ~<线程号>s 用来切换当前线程,如~0s将线程切换到ID为0的线程中。 21. .frame 切换到当前函数栈中,num为栈的编号,可以通过knL列出当前所有栈调用以及其编号。然后通过x列出所有局部变量地址。 22. wt (watch and trace data) 跟踪一个函数调用子函数的数量,可以通过-l设定Trace的层数 23. ln 用来显示指定地址附近的符号 24. !sym 列出当前模块的符号目录 25. sx列出系统异常设置状态 26. l+t:进入源代码级的单步执行模式, l-t:进入汇编级的单步执行模式 |
|
来自: clover_xian > 《我的图书馆》