WinDebug 常用命令表【摘】
启动, 附加进程, 执行和退出(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 –mdaddress |
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 –typetype |
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 |
格式化地显示最近的异常信息 |
WinDebug 常用命令表【摘】的更多相关文章
- Git教程(2)官方命令文档及常用命令表
http://www.cnblogs.com/angeldevil/archive/2013/11/26/3238470.html 1,官方命令文档 http://www.git-scm.com/do ...
- windebug常用命令
使用~查看所有线程 切换到一号线程:~1s 查看所有线程的托管堆栈 ~* e!clrstack 怎么查看,当前线程下,变量的信息? 对于托管代码而言,最核心的命令就是!do(dump object的 ...
- WinDBG 常用命令表[转]
启动, 附加进程, 执行和退出(Starting, Attaching, Executing and Exiting) ======================= Start -> Al ...
- git常用命令表
本文主要是用来记录一些在git管理的项目中常见的场景及其对应的命令,方便自己和他人使用的时候快速查询.如有不对,敬请指正. 查看某个git命令的帮助文档 git help [command] 查看各个 ...
- mysql 常用命令 | 表间 弱关联 join
show databases; use mhxy; select database(); show tables; desc account_list_175; ),(); select from_u ...
- docker-image container 基本操作 -常用命令
基本概念: container 容器.可以把每个 container 看做是一个独立的主机. container 的创建通常有一个 image 作为其模板.类比成虚拟机的话可以理解为 image 就是 ...
- MySQL处理数据库和表的常用命令
MySQL处理数据库和表的常用命令 [导读] 学习如何管理和导航MySQL数据库和表是要掌握的首要任务之一,下面的内容将主要对MySQL的数据库和表的一些常用命令进行总结,一些我们不得不掌握的命令,一 ...
- Git 常用命令速查表(图文+表格)
一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...
- HBase表的基本结构和常用命令行操作
一.HBase表的基本结构 1.概述: 平时常见的MySQL.Oracle数据库都是传统型关系数据库,它们都是按行查询.按行存储:而HBase为非关系型数据库,它是按列存储的的. 在HBase插入数据 ...
随机推荐
- redis和ehcache
Ehcache在java项目广泛的使用.它是一个开源的.设计于提高在数据从RDBMS中取出来的高花费.高延迟采取的一种缓存方案.正因为Ehcache具有健壮性(基于java开发).被认证(具有apac ...
- android market 选择
通过Java包名直接定位到你的App http://market.android.com/details?id=<java包名>或者market://details?id=<java ...
- 滑动到底部或顶部响应的ScrollView实现
关于使用可见:滚动到底部或顶部响应的ScrollView使用 示例APK可从这些地址下载:Google Play, 360手机助手, 百度手机助手, 小米应用商店, 豌豆荚 两种实现方式的主要 ...
- 3D游戏引擎一 win32编程
Windows程序一般都等待用户进行一些操作,然后响应并採取行动. 一般来说.对win32的程序的操作都会转换为系统事件队列中的消息,如按键消息WM_KEYDOWN,WM_MOUSECLICK等传递键 ...
- 互联网TCP/IP五层模型(一)
转载自:阮一峰 我们每天使用互联网.你是否想过,它是怎样实现的? 全世界几十亿台电脑,连接在一起,两两通信. 上海的某一块网卡送出信号,洛杉矶的还有一块网卡竟然就收到了.两者实际上根本不知道对方的物理 ...
- [Angular 2] Custom Validtors
Create a custom validtor which only accepts the string start with '123'; function skuValidator(contr ...
- Liunx Shell入门
本人也是初学习Liunx,如有错误请指出.Liunx版本:Ubuntu 14.04 一.Liunx命令基础 在Ubuntu下打开终端快捷键为:ctrl+Alt+T Liunx命令的基本格式:comma ...
- Android - 软件自动更新的实现(转)
在客户端实现更新操作 涉及到三个技术: 1.xml文件的解析 2.HttpURLConnection连接 3.文件流I/O 这里创建一个解析xml文件的服务类:ParXmlService.java p ...
- HDU5308-脑补-对拍
先贴上对拍的结果: 感想:可以明显发现下标相差1的关系,所以对付这种需要大量脑补的水题,真的蛋疼,以前没用过对拍,只知道有这么回事,调程序什么的都是手算,人工模拟(经常大脑发热,严重缺氧不足),所以试 ...
- 电脑安装win8.1后 前面板没有声音的解决办法
解决部分朋友在给电脑新安装win8.1系统后出现耳机插入电脑前面板音频口没有声音的问题 百度经验:jingyan.baidu.com 方法/步骤 1 1.安装声卡驱动(必须安装,否则无法完成设置) 2 ...