启动, 附加进程, 执行和退出(Starting, Attaching, Executing and Exiting)

=======================

 

Start -> All Programs -> Debugging Tools for Windows -> WinDBG

启动

F6

attach to process

附加到进程

Ctrl-Break

interrupt debugee

中断正在被debug的程序

.detach

detach from a process

脱离进程

g

continue debugee execution

继续执行被debug的程序

q

exit WinDBG

退出WinDBG

获得帮助(Getting Help)

=======================

?

help on commands that affect the debugee

列出所有的内置命令和操作符

.help

help on commands that affect the debugger

列出所有的元命令

.hh command

view the on line help file

打开WinDBG的帮助文件

!help

help on the extension dll at the top of the chain (e. g., SOS)

列出扩展DLL中的扩展命令帮助

操纵命令(Issuing Commands)

=======================

up arrow, down arrow, enter

scroll through command history

浏览命令历史

Right mouse button

paste into command window

在命令窗口中粘贴

检查非托管环境(Examining the Unmanaged Environment)

=======================

lmf

list loaded modules with full path

列出已加载了的模块及其完整路径

lmt

list loaded modules with last modified timestamp

列出已加载了的模块和最后修改的时间戳

~

list unmanaged threads

列出所有非托管线程

~thread s

select a thread for thread specific commands

 

!token -n

view thread permissions

 

k

view the unmanaged call stack

查看非托管调用栈

!runaway

view thread CPU consumption

显示每个线程占用的时间

bp

set a breakpoint

设置一个断点

.dump path

dump small memory image

创建一个小的dump内存镜像

.dump /ma path

dump complete memory image

创建一个完整的dump文件

使用Debuger DLL扩展(Working with Extension DLLs (e. g., SOS))

=======================

.chain

list extensions dlls

列出所有加载了的debugger extension

.load clr10\sos

load SOS for debugging framework 1.0 / 1.1

加载.net 1.1托管程序的debug扩展

.unload clr10\sos

unload SOS

卸载SOS

.loadby sos mscorwks

load SOS for debugging framework 2.0

加载.net 2.0的debug 扩展

SOS命令(SOS Commands)

=======================

!threads

view managed threads

查看所有托管线程

!clrstack

view the managed call stack

查看托管调用栈

!dumpstack

view combined unmanaged & managed call stack

查看非托管和托管结合的调用栈

!clrstack -p

view function call arguments

查看托管函数调用的参数

!clrstack –l

view stack (local) variables

查看托管栈的局部变量

!name2ee module class

view addresses associated with a class or method

查看某个类或方法的内存地址

!dumpmt –md address

view the method table & methods for a class

查看指定地址的方法表和一个类的方法集

!dumpmd address

view detailed information about a method

显示指定地址的MethodDesc结构信息

!do address

view information about an object

显示某地址的对象的信息, 包括fields, EEClass, Method Table和object size

!dumpheap –stat

view memory consumption by type

显示堆内存的使用

!dumpheap –min size

view memory consumption by object when at least size

查看堆内存使用, 忽略小于size字节大小的对象

!dumpheap –type type

view memory consumption for all objects of type type

查看所有类型为type的对象的内存使用

!gcroot address

view which object are holding a reference to address

查看所有对指定地址的对象的引用

!syncblk

view information about managed locks

查看托管的锁(SyncBlock结构)

SOS 2.0 命令(SOS 2.0 Commands)

========================

!bpmd module method

set breakpoint

在指定模块的某一指定的方法上设置断点

!DumpArray address

view contents of an array

查看数组中的元素

!PrintException

view information about most recent exception

格式化地显示最近的异常信息

资料来源:

WinDbg / SOS Cheat Sheet

http://geekswithblogs.net/.netonmymind/archive/2006/03/14/72262.aspx

SOS.dll (SOS Debugging Extension)

http://msdn.microsoft.com/en-us/library/bb190764.aspx

[转]http://www.cnblogs.com/awpatp/archive/2010/05/30/1747736.html

WinDBG 常用命令表[转]的更多相关文章

  1. Git教程(2)官方命令文档及常用命令表

    http://www.cnblogs.com/angeldevil/archive/2013/11/26/3238470.html 1,官方命令文档 http://www.git-scm.com/do ...

  2. 【转载】windbg 常用命令详解

    windbg 常用命令详解 https://blog.csdn.net/chenyujing1234/article/details/7743460 vertarget 显示当前进程的大致信息 lmv ...

  3. windbg常用命令

    SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols CPU常用命令 载入sos.dll  执行.load C:\Windows\Micr ...

  4. windbg 常用命令详解

    = kd> ln 8046e100 (8046e100) nt!KeServiceDescriptorTableShadow | (8046e140) nt!MmSectionExtendRes ...

  5. WinDebug 常用命令表【摘】

    启动, 附加进程, 执行和退出(Starting, Attaching, Executing and Exiting) ======================= Start -> All ...

  6. WinDbg常用命令系列---源代码操作相关命令

    lsf, lsf- (Load or Unload Source File) lsf和lsf-命令加载或卸载源文件. lsf Filename lsf- Filename 参数: Filename指定 ...

  7. WinDbg常用命令系列---显示段选择器dg、链接列表dl和字符串ds/dS

    dg (Display Selector) dg命令显示指定选择器的段描述符. dg FirstSelector [LastSelector] 参数: FirstSelector指定要显示的第一个选择 ...

  8. WinDbg常用命令系列---断点操作b*

    ba (Break on Access) ba命令设置处理器断点(通常称为数据断点,不太准确).此断点在访问指定内存时触发. 用户模式下 [~Thread] ba[ID] Access Size [O ...

  9. WinDbg常用命令系列---!uniqstack

    简介 这个!uniqstack扩展扩展显示的所有线程的堆栈的所有当前进程,不包括显示为具有重复项的堆栈中. 使用形式 !uniqstack [ -b | -v | -p ] [ -n ] 参数 -b将 ...

随机推荐

  1. uestc 360(区间合并)

    题意:有一个长度为n的序列.然后有两种操作,Q a b是输出区间a b内最长上升子序列的长度.A a b c是把区间a b内全部数字加上c. 题解:用线段树维护区间的最长上升子序列长度,那么一个区间的 ...

  2. HBase性能优化方法总结(转)

    原文链接:HBase性能优化方法总结(一):表的设计 本文主要是从HBase应用程序设计与开发的角度,总结几种常用的性能优化方法.有关HBase系统配置级别的优化,可参考:淘宝Ken Wu同学的博客. ...

  3. 【转载】如果快速开发APP&创业

    先贴原文所在个人博客: http://uikoo9.com/ 今天看了一些这个人的文章,还是有一定见解的,比如下面这篇 <如何快速开发出一个高质量的APP——创业谈> http://uik ...

  4. iOS开发-UITableView常用方法

    UITableView常用来展示数据,类似于Android中的ListView,相对于Android中的ListView而言,UITableView的实现是非常简单,继承UITableViewData ...

  5. 15 款JavaScript 热门图形图表库

    图表是数据图形化的表示,也就是“通过形象的图表来展示数据,比如条形图,折线图,饼图”.几乎每个开发或者项目管理团队都需要图表或者图形来简化 理解,可视化复杂的数据和 web 应用工作流.可视化图表可以 ...

  6. linux CentOS7 安装spark

    上次安装了scala-2.11.8,这次安装spark-2.1.0版本 1.下载spark-2.1.0 打开terminal 进入当前用户目录 /home/sks wget http://d3kbcq ...

  7. [转]DOM 中 Property 和 Attribute 的区别

    angular的文档: https://angular.io/guide/template-syntax#property-binding https://blog.csdn.net/sunq1982 ...

  8. linux系统下调度数据库类型资源库中的kettle job

    已经存在kettle的一个资源库enfo,在目录/works/wxj下面有一个job (testmailsuccess.kjb)如何实现手工在kettle外部执行此job和让系统每天定时的调用此job ...

  9. NGUI诡异的drawCall

    看了很多关于NGUI drawCall的文章,见得比较多的一个观点是:一个 Atlas 对应一个Drawcall. 好奇心下做了个demo,两个panel中只用到一个Atlas,却产生了10个draw ...

  10. (https专业版)2018年1月5日高仿互站仿友价T5虚拟交易+实物交易商城-站长交易源码送手机版程序10套模版+首页微信登陆+头部下拉导航

    (https专业版)2018年1月5日高仿互站仿友价T5虚拟交易+实物交易商城-站长交易源码送手机版程序10套模版+首页微信登陆+头部下拉导航 首页支持微信登陆,只有第8套模板支持(endv模板),后 ...