使用windbg抓取dump文件,分析闪退原因

您所在的位置:网站首页 window10csgo闪退 使用windbg抓取dump文件,分析闪退原因

使用windbg抓取dump文件,分析闪退原因

2023-05-26 04:28| 来源: 网络整理| 查看: 265

由于项目需要,解决软件闪退的问题,很多时候,找出引发软件闪退崩溃的现场是十分困难的,因同时发现windbg抓取dump文件比较好处理,这里简要介绍一下windbg抓取流程

1.安装windbg

建议安装一下window sdk的整个软件包,网上一些单个windbg资源容易导致版本与符号文件版本不兼容的问题

2.打开dump文件

file目录下,点开有一个open crash dump,选中自己的dump文件

这样便是打开成功了 

 3.设置符号路径

.sympath + " 你的符号路径 "

添加路径成功之后如图所示,注意的是,需要提前把pdb符号文件放在该dump文件夹下面 ,如果没用放的话,需要自己重新添加一下路径。

如果是release版本的,需要在原软件的输出目录下,将pdb文件拷贝过来(因为符号文件需要和引起软件异常的exe程序是一致的)一般dump文件晚于pdb文件,因为release发布exe程序时生成pdb符号文件,而dump文件是在运行且崩溃的时候才发生

4.加载符号

.reload

 5.查找当前异常的上下文信息

.ecxr

 执行.ecxr指令之后,会查找到异常的上下文,并且显示出主要寄存器的值

6.调用堆栈信息

kp

利用kp指令显示堆栈跟踪,一般符号文件无缺漏的话,会定位到程序的代码错误位置。相同指令还包括kb,kv等等

以上信息就可以查看到错误发生的位置,也可以使用!analyze -v查看异常的类型

!analyze -v

 7.如果堆栈信息没有陷入到程序具体位置,那很有可能是你的pbd符号文件没有成功加载,可以使用lml查看符号的信息,包括符号路径。

如果加载失败,可以新建一个文件夹,将pdb文件放入其中并在windbg中加入symbol path路径当中,再重复以上操作定位异常信息即可。

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3