1、dt  视图结构内容

dt + 结构名   要么 dt + 结构名 + 住址

kd> dt _object_header
nt!_OBJECT_HEADER
+0x000 PointerCount : Int4B
+0x004 HandleCount : Int4B
+0x004 NextToFree : Ptr32 Void
+0x008 Type : Ptr32 _OBJECT_TYPE
+0x00c NameInfoOffset : UChar
+0x00d HandleInfoOffset : UChar
+0x00e QuotaInfoOffset : UChar
+0x00f Flags : UChar
+0x010 ObjectCreateInfo : Ptr32 _OBJECT_CREATE_INFORMATION
+0x010 QuotaBlockCharged : Ptr32 Void
+0x014 SecurityDescriptor : Ptr32 Void
+0x018 Body : _QUAD
kd> dt _object_header 0x88132d58  //此地址我本机某对象头的地址
nt!_OBJECT_HEADER
+0x000 PointerCount : 2
+0x004 HandleCount : 0
+0x004 NextToFree : (null)
+0x008 Type : 0x884ee288 _OBJECT_TYPE
+0x00c NameInfoOffset : 0x10 ''
+0x00d HandleInfoOffset : 0 ''
+0x00e QuotaInfoOffset : 0x20 ' '
+0x00f Flags : 0x1a ''
+0x010 ObjectCreateInfo : 0x00000001 _OBJECT_CREATE_INFORMATION
+0x010 QuotaBlockCharged : 0x00000001
+0x014 SecurityDescriptor : (null)
+0x018 Body : _QUAD
kd> dt _OBJECT_HEADER_NAME_INFO 0x88132d48  //对象名
nt!_OBJECT_HEADER_NAME_INFO
+0x000 Directory : 0xe10067f0 _OBJECT_DIRECTORY
+0x004 Name : _UNICODE_STRING "KeRead"
+0x00c QueryReferences : 1
kd> dt _UNICODE_STRING 0x88132d4C
nt!_UNICODE_STRING
"KeRead"
+0x000 Length : 0xc
+0x002 MaximumLength : 0xc
+0x004 Buffer : 0xe2164968 "KeRead"

2、dd等 将内存地址的内容以 四字节等显示出来

dd + 地址

dd e2164968
e2164968 0065004b 00650052 00640061 5112730d
e2164978 00080403 e24e4d43 e2164a80 e216b008
e2164988 00000000 417b0026 36334444 2d384141
e2164998 41313537 3735342d 32412d39 442d3636
e21649a8 35463636 43323032 7d424243 00000000
e21649b8 0c080408 e24e4d43 00010001 3aabe829
e21649c8 00000000 417b0026 43364344 2d383842
e21649d8 43343234 4431312d 35392d32 302d4132

dd e2164968 l10    // 不是110  是 L的小写l -- l10
e2164968  0065004b 00650052 00640061 5112730d
e2164978  00080403 e24e4d43 e2164a80 e216b008
e2164988  00000000 417b0026 36334444 2d384141
e2164998  41313537 3735342d 32412d39 442d3636

3、da、du将内存地址的内容以ascii或unicode形式读取
<span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">kd> da e2164968</span>
e2164968  "K"
kd> da e2164969
e2164969 ""
kd> da e216496a
e216496a "e"
kd> da e216496b
e216496b ""
kd> da e216496c
e216496c "R"
kd> da e216496d
e216496d ""
kd> da e216496e
e216496e "e"
kd> da e216496f
e216496f ""
kd> da e2164970
e2164970 "a"
kd> du e2164968
e2164968 "KeRead猍儒?.?.?.?."

一些经常使用命令,就不逐个測试了:

  1. da 依照ASCII字符串读取
  2. db 依照单字节和ASCII字符串读取
  3. dc 依照4字节和ASCII字符串读取
  4. dd 依照4字节读取
  5. dD 依照双浮点(8字节)格式读取
  6. df 依照单浮点(4字节)格式读取
  7. dp 依照指针(32位系统读取4字节,64位系统读取8字节)格式读取
  8. dq 依照8字节读取
  9. du 依照Unicode字符串读取
  10. dw 依照2字节读取
  11. dW 依照2字节和ASCII字符串读取
  12. dyb 依照单字节和二进制读取
  13. dyd 依照4字节和二进制读搭

版权声明:本文博主原创文章。博客,未经同意不得转载。

windbg检查常用命令的更多相关文章

  1. ES集群检查常用命令

    一.集群检查常用命令 查询集群状态命令: curl -XGET "http://ip:port/_cluster/health?pretty" 查询Es全局状态: curl -XG ...

  2. Linux 性能检查常用命令

    ####消耗CPU最多的进程 [root@Yong ~]# ;|head ##拼接进程号 [root@Yong ~]# |awk '{print $1}' |awk BEGIN{RS=EOF}'{gs ...

  3. windbg常用命令

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

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

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

  5. windows常用命令有哪些(整理)

    windows常用命令有哪些(整理) 一.总结 一句话总结:其实这个好学,只要先弄懂主干,清除主干,那么枝叶的添加逻辑就很清除了 这种多内容的,散乱的,弄清除主干效率就高了 1.windows命令行的 ...

  6. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  7. LVM基本介绍与常用命令

    一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...

  8. 【原】npm 常用命令详解

    今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...

  9. Linux常用命令(一)

    Linux常用命令 1. pwd查看当前路径(Print Working Directory)    [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...

随机推荐

  1. SSH WebShell: SSH在线WEB管理器安装教程 - VPS管理百科

    SSH WebShell: SSH在线WEB管理器安装教程 - VPS管理百科 SSH WebShell: SSH在线WEB管理器安装教程 本站原创 [基于 署名-非商业使用-相同方式分享 2.5 协 ...

  2. [品质生活] 舒适 Schick HYDRO 5剃须刀

    [品质生活] 舒适 Schick HYDRO 5剃须刀 [品质生活] 舒适 Schick HYDRO 5剃须刀

  3. hbase总结(二)-hbase安装

    本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式. 安装的前提条件是已经安装成功了hadoop,并且hadoop的版本号要和hbase的版本号相匹配. 我将要安装的hbase是hbas ...

  4. dell服务器各类raid 和磁盘在阵列卡上的实验

    听很多人说,做好阵列的硬盘从阵列上移除后,重新从硬盘导入阵列信息的时候不能打乱位置,昨天用两台Dell R710,四块sas 300G HP硬盘做实验,实验步骤如下: 一.dell R710首先用三块 ...

  5. Wix打包系列 (六)制作升级和补丁包

    原文:Wix打包系列 (六)制作升级和补丁包 前面我们已经知道怎么制作一个完整安装包了,但我们的软件往往不能一次性就满足客户的需要,当客户需要我们给软件进行升级的时候,我们应该怎么做呢? 在这之前,我 ...

  6. OSPF理论总结

    OSPF学习总结一.OSPF协议的报文类型: 1. Hello 报文:主要用来发现.建立和维护邻居关系. 2. DD报文:数据库的描述报文,主要用来两台路由器的数据库同步. 3. LSR报文:链路状态 ...

  7. codefroce D. Powerful array[初识块状数组]

    codefroce D. Powerful array[初识块状数组] 由于是初始所以,仅仅能先用别人的分析.囧... 题目: 给定一个数列:A1, A2,--,An,定义Ks为区间(l,r)中s出现 ...

  8. prepareCall()运行存储过程

    CallableStatement 对象为全部的 DBMS 提供了一种以标准形式调用已储存过程的方法.已储存过程储存在数据库中.对已储存过程的调用是 CallableStatement对象所含的内容. ...

  9. Cordova CLI源码分析(二)——package.json

    每个包需要在其顶层目录下包含一个package.json文件,该文件不仅是包的说明,也影响npm安装包时的配置选项 更多参数详见参考文档https://npmjs.org/doc/json.html ...

  10. C++——STL中三种顺序容器的简要差别

    C++ STL 提供了3个顺序容器 :vector, deque, list Vector动态数组.支持高速訪问:list双向链表,支持高速插入和删除. vector 中的元素是顺序存放的.所以随机訪 ...