当前位置: 首页 > ds >正文

windbg调试dump文件

1.调试信息设置
首先得设置pdb位置,源码位置,然后打开dump文件
在这里插入图片描述

eg:
在这里插入图片描述
在这里插入图片描述

符号搜索路径
E:\code\KilaApp\Release;
SRVD:\symbolshttp://msdl.microsoft.com/download/symbols

代码搜索路径
E:\code\KilaApp_online\KilaMain;
E:\code\KilaApp_online\uvo_sdk_hongdouPC

2.自动分析dump文件 查看数据

指令1:
!analyze -v
自动分析dump文件,如果有exception截图记录;如果没有则进行下面操作

指令2:
~*kbn
查看所有线程运行情况 结果出来后从下往上搜索关键字except 找到异常线程分析记录;
在这里插入图片描述

指令3:

复制第三个参数00b8d9d0

dd 00b8d9d0

在这里插入图片描述

然后输入 .exr 00b8db60(第二个参数)查看上下文 .cxr 00b8dbb0 (第三个参数)
在这里插入图片描述

.exr 00b8db60(第二个参数)查看上下文 .cxr 00b8dbb0 (第三个参数)

然后kbn

在这里插入图片描述

然后发现自己熟悉代码

双击崩溃位置,发现跳不过去

打开call stack
在这里插入图片描述

打开call stack

双击崩溃的位置
在这里插入图片描述

双击崩溃的位置

成功跳转代码

打开local

在这里插入图片描述

打开local

查看崩溃前的数据

在这里插入图片描述

查看崩溃前的数据

这里就可以找到错误的位置以及出问题的原因了。

=====================================

其他:

4.显示指定地址对应异常记录的内容

.exr Address #显示指定地址的异常情况
.exr -1 #显示最新的异常
显示与调试器在目标计算机上遇到的异常相关的信息。显示的信息包括异常地址、异常代码、异常标志和异常参数的变量列表。 通常可以通过使用!pcr扩展命令获取地址。

5.显示保存在指定地址的上下文记录

.cxr [Options] [Address]
参数:

Options
可以是以下选项的任意组合:
/f Size—强制上下文大小等于Size的值(字节)。当上下文与实际目标不匹配时(例如,在WOW64调试期间在64位目标上使用x86上下文时),这将非常有用。如果指定的大小无效或不一致,将显示错误“无法将上下文转换为规范格式”。
/w—将当前上下文写入内存,并显示其写入位置的地址。
Address
系统上下文记录的地址。省略地址不会显示任何上下文记录信息,但会重置寄存器上下文。
上下文记录中的信息可用于帮助调试发生未处理异常且无法使用精确堆栈跟踪的问题。.cxr命令显示指定上下文记录的重要寄存器。此命令还指示调试器将指定的上下文记录用作寄存器上下文。执行此命令后,调试器将访问此线程最重要的寄存器和堆栈跟踪。在允许目标再次执行或使用另一个寄存器上下文命令(.thread、.ecxr、.trap或.cxr)之前,此寄存器上下文将一直保持。在用户模式下,.cxr/w命令将上下文写入内存,并显示存储上下文的地址。可以将此地址传递给。
6.显示与当前异常关联的上下文记录

.ecxr
定位当前异常的上下文信息,并显示指定上下文记录的重要寄存器。此命令还指示调试器将与当前异常关联的上下文记录用作寄存器上下文。运行.ecxr之后,调试器可以访问此线程最重要的寄存器和堆栈跟踪。在启用目标执行、更改当前进程或线程或使用另一个寄存器上下文命令(.cxr或.ecxr)之前,此寄存器上下文将一直保持。

7.查看当前线程的运行情况

kbn

参考:

https://zhuanlan.zhihu.com/p/43972006

https://www.cnblogs.com/yilang/p/11531740.html

https://blog.csdn.net/m0_46256056/article/details/118538700

http://www.xdnf.cn/news/3454.html

相关文章:

  • 信号与系统-风中醉风
  • 2025 RSAC|自主式 GenAI 安全智能体(Agent)开启防御新纪元
  • Splunk 使用Role 实现数据隔离
  • firecrawl的docker安装和api调用
  • Linux安装MySQL详细教程
  • 视觉标记token:解锁AI视觉理解新维度的钥匙
  • 强化学习之基于无模型的算法之基于值函数的深度强化学习算法
  • DeepSeek-V3 解析第二篇:DeepSeekMoE
  • 数据库的死锁相关(一)
  • 动态规划 -- 子数组问题
  • nginx 配置要领
  • 客户服务升级:智能语音外呼系统在多领域的场景应用解析
  • 大模型时代的新燃料:大规模拟真多风格语音合成数据集
  • 面经很简单的
  • 机器学习_KNN算法
  • 【SpringBoot】基于mybatisPlus的博客管理系统(2)
  • 汽车电子 专栏文章汇总
  • python+echart绘制一个听力图
  • 常用电机类型及其特点对比
  • 如何用fiddler进行弱网测试(工作常用篇)
  • sd webui 安装插件sd-webui-EasyPhoto依赖安装失败解决办法
  • 基于深度强化学习训练一个会走迷宫的ai
  • java之Integer、Double自动拆装箱比较,踩坑值int和Integer比较之空指针异常
  • WPF之TextBox控件详解
  • 第八节:目录操作
  • 二叉树的路径总和问题(递归遍历,回溯算法)
  • 如何理解神经网络训练的循环过程
  • 产品月报|睿本云4月产品功能迭代
  • MS31860T——8 通道串行接口低边驱动器
  • 制造业行业ERP软件部署全流程指南:从选型到维护,怎么做?