zoukankan      html  css  js  c++  java
  • WinDbg设置托管进程断点

        WinDbg的Live模式调试。.Net 托管代码 ,使用bp,bu,bm无法设置断点,也许是我不会。研究了下,托管代码有自己的命令,!BPMD 模块名 完全限定的方法名 

    步骤:

    1、查找进程PID,用WinDbg,Attach上

    2、使用反编译工具(IL),查找需要断点的方法名,需要完全限定名。

    3、根据名称,使用!name2ee  也可找到方法的完全限定名。 

    4、使用!BPMD 模块名 完全限定的方法名 设置断点。这是托管代码设置断点命令。设置完成后,显示Found 1 methods in module xxx 就设置成功。

    5、继续执行程序。等待断点进入。进入后,通过!CLRStack -p查看参数即可。

    退出,而不结束进程,使用.detach命令

    =================另一种方法打入断点,更新日期2017-08-11==================

    仅使用WinDbg,不是用反射工具,从外到里,一层层查看。
    1、先DumpDomain出来。  !DumpDomain 导出Domain下每个Module
    2、然后DumpModule下的所有类。!DumpModule -mt 00007ffdb2d277a0 导出此Module的所有类
    3、找到指定类,Dump出所有Method。!DumpMT -MD /d 00007ffdb2d288f8 导出此类的所有方法
    4、打断点。!BPMD -md MethodDesc 打入断点,参数为MethodDesc地址
    bl 可列出有效断点
    bc * 可清除所有断点
    bc N 可清除指定断点

    WinDbg调试高内存的.Net进程Dump

  • 相关阅读:
    CF1063A Oh Those Palindromes
    洛谷——P1640 [SCOI2010]连续攻击游戏
    洛谷—— P1268 树的重量
    洛谷——P4932 浏览器
    洛谷——P1627 [CQOI2009]中位数
    洛谷——P4109 [HEOI2015]定价
    CF438D The Child and Sequence
    AFO
    About me & 留言板
    The real universe
  • 原文地址:https://www.cnblogs.com/wigis/p/7307924.html
Copyright © 2011-2022 走看看