winDbg调用.Net程序
1、运行WinDbg软件,然后按【Ctrl+S】弹出符号表设置窗
2、将符号表地址:SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols粘贴在输入框中,点击确定即可。
3、Attach to process 或都加载Dump文件
windbg命令行:
.load "E:\dmp\v4.0.30319\SOS.dll //要先把sos.dll从c:\windows\Mircrosoft.Net\Framework复制到dmp目录
.ld 模块名 //加载某模块的debug符号
.lm //查看加载了哪些模块
//-----------------------------------
64位机上32位程序的DUMP文件:
.load wow64exts
!sw //切换成32位模式
.load sos.dll
//-----------------------------------
!clrstack 显示当前线程的clr调用栈
~*e!clrstack//查看所有线程的clr调用栈
!syncblk //查看哪些线程拿到了锁
~67e!clrstack//跳到某个拿到锁的线程
!runaway //查看这个占有锁的线程运行了多长时间
!pe //查看异常信息
!analyze -v //分析异常