前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WinDbg基础

WinDbg基础

原创
作者头像
用户10713611
发布2023-08-26 02:52:51
1780
发布2023-08-26 02:52:51
举报
文章被收录于专栏:学习自用

minni dump文件 异常捕获模块自动生成

全dump文件 任务管理器导出,动态调试使用.dump导出

未捕捉异常无法生成dump文件,导出中二次崩溃,程序主动调用abort终止进程都会导致dump文件未生成。

静态调试

打开dmp文件后导入pdb符号表,注意时间戳是否一致检查加载成功

动态调试

使用WinDbg打开程序,打开程序后再附加WinDbg

//栈溢出异常VS调试直接退出,调试时函数调用堆栈有问题时使用

PDB文件

程序模块符号表,需要严格匹配时间戳,pdb文件名称必须和模块名称一致。每次编译生成一次,导入后可以查看函数具体名称和行号。

基本流程

查看异常类型,查看异常的汇编指令及寄存器值,查看函数调用堆栈,对照源码分析,有时查看相关变量的值。

.ecxr 切换到异常线程

kn/kv/kp 查看当前线程的函数调用堆栈

~ns 切换到n号线程,~查看所有线程

g 跳过中断

lm vm 查看模块详细信息

.reload 强制加载pdb文件

.hh 打开帮助文档

.effmach x86 切换到32位上下文

IsBadReadPtr IsBadWritePtr已废弃,调试中断时g继续

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 静态调试
  • 动态调试
  • PDB文件
  • 基本流程
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档