Windbg是windows平台上强大的调试器,它相对于其他常见的IDE集成的调试器有几个重要的优势, Windbg可以做内核态调试 Windbg可以脱离源代码进行调试 Windbg可以用来分析dump文件 Windbg支持丰富的调试扩展 以下是一些windbg安装和使用相关的文档, Installing and Configuring WinDbg (Windows Debug Tools)‏ Windbg Tutorials Debugging Using Windbg (msdn) Win…
本文介绍windbg动态调试过程中一个非常有用的命令,wt的用法. wt命令 wt命令之所以称为wt是因为它是watch and trace的简称,即用来观察和跟踪的命令.这个命令一般用在动态调试而不是dump分析中.他的作用是跟踪程序的执行过程,并将每个执行的调用打印到输出. 我们先准备一个简单的斐波那契计算代码,然后通过wt命令来追踪这个程序的执行. #include "tchar.h" #include <iostream> using namespace std;…
在调试过程中难免会遇到需要反编译代码来分析逻辑的时候,在windbg中,需要反编译代码就要用到u/ub/uf这三个命令.本文这里分别介绍这三个命令各自的用途. 以下是一个quick sort的实例代码,将其编译成可执行文件,然后通过windbg运行. #include <stdio.h> #include <string.h> #define MAXLINES 5000 #define MAXLEN 1000 #define ALLOCSIZE 10000 static char…
首先将源代码编译.链接生成debug版本的可执行文件,然后通过‘gdb  debug版本的可执行文件名’进入调试模式. a) 单进程.单线程基础调试命令 l    显示main函数所在的文件的源代码 list  filename:num   显示filename文件num行上下的源代码 b  linenum           给指定行添加断点 b  funname           给指点函数的第一有效行添加一个断点 info  break          显示断点信息 delete  断…
转载收藏于:http://www.cnblogs.com/kekec/archive/2012/12/02/2798020.html  #调试命令窗口 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #使用gflags.exe工具(在windbg所在目录下),让某个进程启动时,拉取windbg进行调试 如下截图:当名称为captcomm.exe的进程启动时,拉起windbg调试 也可通过脚本命令来实现: // 运行c…
作者:张佩][原文:http://www.yiiyee.cn/Blog] 1. 概述 用户成功安装微软Windows调试工具集后,能够在安装目录下发现四个调试器程序,分别是:cdb.exe.ntsd.exe.kd.exe和Windbg.exe.其中cdb.exe和ntsd.exe只能调试用户程序,Kd.exe主要用于内核调试,有时候也用于用户态调试,上述三者的一个共同特点是,都只有控制台界面,以命令行形式工作. Windbg.exe在用户态.内核态下都能够发挥调试功能,尤其重要的是,它不再是命令…
一. 1. !address eax 查看对应内存页的属性 2. vertarget 显示当前进程的大致信息 3 !peb 显示process Environment Block 4. lmvm 可以查看任意一个dll的详细信息 例如:我们查看cyusb.sys的信息 5.reload /!sym 加载符号文件 6. lmf 列出当前进程中加载的所有dll文件和对应的路径 7. r 命令显示和修改寄存器上的值 r命令显示和修改寄存器上的值 0:018> r eax=0 修改了寄存器,把eax的值…
3 进程与线程 既可以显示进程和线程列表,又可以显示指定进程或线程的详细信息.调试命令可以提供比taskmgr更详尽的进程资料,在调试过程中不可或缺. 3.1 进程命令 进程命令包括这些内容:显示进程列表.进程环境块.设置进程环境. 进程列表 多个命令可显示进程列表,但一般只能在特定情况下使用,它们是:|..tlist.!process和!dml_proc. 竖线命令显示当前被调试进程列表的状态信息,这个命令在本章开头已作过介绍,命令格式如下: |  [进程号] 请注意这里的定语:被调试进程列表…
陈皓:用GDB调试程序 GDB概述———— GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.所谓“寸有所长,尺有所短”就是这个道理. 一般来说,GDB主要帮忙你完成下面四个方面的功能: 1.启动你的程序,可以按照你的自定义的要求随心所欲的运行程序.    2.可让被调试的程序在你所指定的调置的断点处停住.(断点…
1.启动调试 前置条件:编译生成执行码时带上 -g,如果使用Makefile,通过给CFLAGS指定-g选项,否则调试时没有符号信息.gdb program //最常用的用gdb启动程序,开始调试的方式gdb program core //用gdb查看core dump文件,跟踪程序core的原因gdb program pid //用gdb调试已经开始运行的程序,指定pid即可gdb attach pid //用gdb调试已经开始运行的程序,指定pid即可 2.调试命令(1)执行命令模式-bat…