很久很久以前用到的方法,
方法挺笨的,但是算是比较实用吧。
全自动的调试dmp,最后只要结果。
谁用得着就给谁看吧。
这里需要两个脚本
1:启动脚本,是一个批处理文件,用来启动调试器,来加载dmp和调试脚本。
2:调试脚本,是一个windbg脚本文件,用来操作调试器,是真正工作的脚本。
现在开始说明脚本内容。
1:启动脚本模板
for /f %%i in ('dir "要获取的dmp文件,可以加通配符* " /s /b') do (
cd /d "调试器路径"
cdb -y "符号文件路径" -z "dmp文件路径" -cf "调试脚本"
cd /d "原目录"
)
说明:
要获取的dmp文件,是可以加通配符的,比如 C:*.dmp
调试器路径,这里是WinDBG的目录
符号文件路径,可以是符号文件目录加上微软的下载地址,
dmp文件路径,就是当前次要调试的dmp文件
调试脚本,就是要工作的那个脚本
原目录,是要返回的原始目录
其中最重要的,有一个cdb,这是命令行下的dmp调试器程序,
运行这个批处理 之后,就会启动调试器,然后执行调试脚本。
2:调试脚本内容
.shell -ci ".ecxr" find /I "100233bc"
.logopen /t D:output.txt
u mswsock!_imp__DnsQueryExW
.logclose
q
直接就是WinDBG的命令了,这里就容易多了,