老铁们,大家好,相信还有很多朋友对于memory.dmp和电脑蓝屏dmp文件的相关问题不太懂,没关系,今天就由我来为大家分享分享memory.dmp以及电脑蓝屏dmp文件的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
本文目录
如何用windbg分析memory.dmp文件
在C++实际开发过程中,开发出来的程序,一般情况下由开发人员进行单元测试,然后移交给测试人员进行测试。在开发人员测试出现的bug,我们可以直接在本地进行调试。如果测试人员测试出崩溃级别的bug,如果我配知们需要调试往往借助于vs提供的Remote Debugger工具进行远程调试(关于vs2010远程调试的方法,请参考http://blog.sina.com.cn/s/blog_a459dcf5010153o7.html),然是当程序在用户手中出现崩溃此时我们可以采用Remote Debugger进行调试,但是如果此时开发人员无法直接去用户现场调试,此时就需要用户生成DMP文件,以便开发人员使用DMP文件进行分析。
本文主要介绍C++开发过程中出现程序崩溃后,如何进行分析定位bug(基于xp系统)。
一、DMP文件获取设置
(1)在运行窗口中输入 drwtsn32-i,并且点击确定
WinDbg分析DMP文件方法完全攻略
(2)在(1)确定后弹出如下对话框
WinDbg分析DMP文件方法完全攻略
(3)在(2)弹出的确定框后点击确定按钮完成,将Dr.Watson设置为默认应用程序调试程序。
Dr.Watson系统自带的程序。
(4)再次在运行窗口中输入:drwtsn32,如下图:
WinDbg分析DMP文件方法完全攻略
(5)点击确定按钮,在弹出的对话框中按照下列方式设置
WinDbg分析DMP文件方法完全攻略
(6)点击确定按钮完成DMP文件设置。
二、关闭Dr.Watson方法
(1)打开注册表
(2)在注册表中进入主键[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\AeDebug],然后将“AUTO”键值设置为0如下图:
WinDbg分析DMP文件方法完全攻略
三、Windbg下载地址
http://msdn.microsoft.com/en-us/windows/hardware/gg463009.aspx,下载完成后安装
四、DMP文件获取
(1)用vs2010创建一个基于win32的程序,其源码如下:
WinDbg分析DMP文件方法完全攻略
(2)我们知道在学习C++中整数不能跟0进行除运算,否则会引起程序崩溃。而(1)中就是编写能触发0的异常,导致程序结束运行的程序。编译(1)中的程序,结果如下:
WinDbg分析DMP文件方法完全攻略
(3)运行(2)中test.exe程序,程序崩溃。如旦弊下图:
WinDbg分析DMP文件方法完全攻略
(4)按照《一模卖族、DMP文件获取设置》步骤实现Dr.Watson设置为默认应用程序调试程序。
(5)再次运行运行(2)中test.exe程序如下图:
WinDbg分析DMP文件方法完全攻略
点击确定完成dmp文件的生成。
(6)打开在(4)中设置dmp文件路径。(本例中默认地址为:C:\Documents and Settings\All Users\Application Data\Microsoft\Dr Watson)如下图:
WinDbg分析DMP文件方法完全攻略
其中user.dmp就是我们需要的dmp文件。
五、分析《四、DMP文件获取》中获取的DMP文件
文件或目录memory.dmp损坏且无法读取
有时候会遇到有些文件双击打不开而且又删除不掉,且删除时会显示“无法删除文件,文件或目录损坏且无法读取”这样的问题,让人非常此毁恼火,现在有一个简单的纳扒闹办法可以解决这个问题洞罩。
首先点“开始”菜单或按“WIN键+R”启动“运行”,输入“CHKDSK D:/F”,其中“D:”为出问题的文件所在磁盘的盘符,可以视情况而改,接下来点确定,然后你就等着就好了,过上一会,命令窗口消失,好了,可以正常打开删除了!
crash.dmp 可以删除吗
可以删除的,因为这个只是一个dump文件,一般是程序或者系统用于缓存内存内容的临时文件肆敬。
dmp也是是系统错误产生的文件,比如windows自己的memory.dmp和minixxxx.dmp文件.dmp错误报告文件.
如果是windows系统的话:
微软在Windows中设计了一个功能,就是在蓝屏出现后,keBugCheck能够生成一个侦错文件一Memory.dmp(-般位于系统目录中,比如:C:\WINNT),
它记录了发生篮屏时的详细情况,以便微软专家对错误进行分析。当然,一般用户即使打开它,也根本看不懂其中奥秘。微软建议在遇到蓝屏后,将Memory.dmp压缩并通过FTP、邮件或其他方式寄送给他们,但过程比较繁索,目前还没有人证明这样能尽快得到来自微软的解决裂笑慎方案。
如果你对Memory.dmp的内容感兴趣,可运行windows2000安装光盘support\tools文件夹中setup.exe来安装其支持工具,然后再C:\Program Files\Support Tools文件夹中找到umPchk.exe,它是一个命令行工具,可以打开Momory.dmp并显示其中内容。
默认生成的Memory.dmp体积基本与你的系统内存相等,可以按下Win+Break组合键升念打开“系统属性”,进入“高级--启动和故障恢复”,在“写入调试信息”项选择是否生成Memory.dmp、“小内存转储”、“核心内存转储”或“完全内存转储”。建议选择“无”,因为Memory.dmp可能只对微软有用,并且我们一般也不会选择发给微软。
即使微软附件中的磁盘清理也是带有删除内存错误转储文件的选项【就是tmp、dmp格式的】。
win8系统memory.dmp找不到怎么办
倘若各位新手用户还不会处理win8系统memory.dmp找不到的问题,就来下文学习win8系统memory.dmp找不到的处理操作步骤吧,希森并望可以帮助到大家。
win8系统memory.dmp找不到的处理操作步骤
1、右击桌面上“我的电脑”,从弹出的菜单中选择“属性”命令。如图所示:
2、点击打开的“系统”窗口左侧的“高级系统设置”。如图所示:
3、在弹出的“系统属性”对带橡话框中,切换到“高级”选项卡。如图所示:
4、再单击最下面的“启动和故障恢复”下面的“设置”按钮。如图所示:
5、在弹出物“启动和故障恢复”对话框中,勾选上“系统失败”下面的“将事件写入系蠢春旁统日志”复选框。如图所示:
6、同时确认下面的“写入调试信息”不是选择了“无”,最后“确定”即可。如图所示:
7、之后若再有蓝屏现象,则会系统目录下有蓝屏记录文件%SystemRoot%MEMORY.DMP了。如图所示:
win8|
OK,本文到此结束,希望对大家有所帮助。