• WinDbg 常用调试命令


    <转自> http://blog.csdn.net/agan4014/article/details/2180699

    一、设置Symbols File Path

      srv*c:/MySymbols*http://msdl.microsoft.com/download/symbols;c:/MySymbols;”,将其输入“Symbols Path”中,并将“Reload”选上,点击OK 将立即更新Symbols

        说明:“c:/MySymbols”是Symbols File本地存储路径。如果本地没有,Windbg将自动从http://msdl.microsoft.com/download/symbols上下载,下载后就直接使用本地的Symbols文件。如:第二个“c:/MySymbols”。

     

    二、调试的工程设置:DebugàEnable Debuggersà选上“Enable unmanaged code debugging”。这时可用于调试非托管代码。

     

    三、Windbg加载调试程序:

    1. 从“Open Executable”加载.exe程序

    2. !g              //运行程序。

    3. Break       //程序

    4. !DumpHeap           //显示堆信息;此时你会发现“c:/MySymbols”中多了“mscorwks.pdb”文件夹

     

    四、常用命令。

     

    命令

    操作

    .hh

    调出帮助文件

    !help

    显示部分命令

    !help <command>

    显示某命令的详细信息

     

     

    lm

    显示进程中加载的模块信息

    lmvm

    可以查看任意一个DLL/EXE的详细信息

    lml

    查看模块的加载情况

    ld

    加载某块

     

     

    !thread

    查看所有线程

    ~ns

    切换到第n号线程

    !runaway

    显示每一个线程所消耗CPU的时间

     

     

    !sym noisy

    开启WinDbg log日志,显示具体信息

    !analyze -v

    调用WinDbg智能解析,一般程序崩溃的情况下首选调用

    !locks

    查看锁,一般调试死锁的情况下使用

     

     

    ~*kb

    显示所有调用堆栈

    kb

    显示当前调用堆栈

    dv

    显示局部变量

    dt

    显示数据结构

    dd

    察看堆内容

    !address

    显示某一地址上的页信息

    u

    显示汇编代码

    uf

    反汇编代码

    .exr

    打印出异常的信息

    .cxr

    切换上下文

     

     

    x

    查找某一符号的地址

    dds

    把某一地址对应到符号(于x的用法相反)

     

     

    注: 具体可以调出帮助文件再查找使用方法.

  • 相关阅读:
    源码
    Leetcode 230. 二叉搜索树中第K小的元素 中序遍历
    Leetcode 160. 相交链表 哈希 链表
    Leetcode 142. 环形链表 II
    Leetcode 217. 存在重复元素 哈希 排序
    asp.mvc2.0资料
    关于CRM的介绍
    WPf控件模板缺省样式
    皮肤制作工具
    关于linq的用法
  • 原文地址:https://www.cnblogs.com/zzugyl/p/2828965.html
Copyright © 2020-2023  润新知