VS与Windbg调试

来源:互联网 发布:新店怎么做淘宝客 编辑:程序博客网 时间:2024/05/09 16:26
、使用WinDBG生成dump文件
1) 打开WinDBG并将之Attach 到crash的程序进程
2) 输入产生dump 文件的命令
WinDBG产生dump 文件的命令是 .dump ,可以选择不同的参数来生成不同类型的dump文件。
选项(1): /m
命令行示例:.dump /m C:\dumps\myapp.dmp
注解: 缺省选项,生成标准的minidump, 转储文件通常较小,便于在网络上通过邮件或其他方式传输。 这种文件的信息量较少,只包含系统信息、加载的模块(DLL)信息、 进程信息和线程信息。
选项(2): /ma
命令行示例:.dump /ma C:\dumps\myapp.dmp
注解: 带有尽量多选项的minidump(包括完整的内存内容、句柄、未加载的模块,等等),文件很大,但如果条件允许(本机调试,局域网环境), 推荐使用这中dump。
选项(3):/mFhutwd
命令行示例:.dump /mFhutwd C:\dumps\myapp.dmp
注解:带有数据段、非共享的读/写内存页和其他有用的信息的minidump。包含了通过minidump能够得到的最多的信息。是一种折中方案。

二、分析Dump文件
(1)WinDBG方式分析

(a)打开WinDBG,File/Sybolm File Path/ 指定发布EXE 的时候.PDB生成的路径

(b)file/Open Crash Dump/  打开生成的DMP文件

(c)使用WinDBG的命令来分析Bug, 如命令: !analyze -v

(d)也可以使用快捷栏的功能查看一些变量的基本信息来帮助查看Bug

(2)使用VS分析
参考文章http://www.cppblog.com/woaidongmao/archive/2009/10/21/99135.html
0 0
原创粉丝点击