在WinDbg里使用MEX调试扩展
Posted 活着的虫子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在WinDbg里使用MEX调试扩展相关的知识,希望对你有一定的参考价值。
简介
针对WinDbg的MEX调试扩展可以帮助您简化常见的调试器任务,并为调试器提供强大的文本筛选功能。此扩展被Microsoft支持工程师广泛用于解决流程应用程序的故障。
下载&安装
- 下载mex.exe存档。下载地址https://www.microsoft.com/en-us/download/details.aspx?id=53304
- 解压缩到任何文件夹。
- 使用以下命令将“MEX Debugging Extension for WinDbg”加载到调试器中:.load(提取的文件夹)\\MEX.dll。
下载之后,解压缩,有两个目录,X64和X86,大家根据自己的需要进行加载,目前我们主要用X64。建议直接把这个扩展拷贝到Windbg运行目录中。
使用帮助
加载到windbg后,输入!mex help命令,获取帮助
可以看到已经分类显示帮助信息,点击一项查看详细信息,比如“General”
使用举例
!clrstack2
此命令用于显示当前线程的托管调用堆栈。
!dae
此命令是DumpAllExceptions的缩写。它列出了收集转储时内存中的所有异常。
!us
这个命令是UniqueStacks的缩写,它负责列出所有按调用堆栈线程分组的对象。
! Mex.writemodule -a -p "destination path"
此命令用于将应用程序使用的所有二进制文件提取到特定路径。
以上是关于在WinDbg里使用MEX调试扩展的主要内容,如果未能解决你的问题,请参考以下文章
[原]调试实战——使用windbg调试TerminateThread导致的死锁