151-5197-5087
扬州华为授权服务中心
当前位置:网站首页 > 网络设备调试 正文 网络设备调试

【C++软件调试技术】使用 Windbg 分析软件异常时的诸多细节与技巧总结

2024-12-05 22:03:46 网络设备调试 27 ℃ 0 评论

目录

1、dump文件

1.1、dump文件的生成方式

1.2、dump文件的大小

2、pdb符号文件

2.1、pdb文件的路径设置

2.2、pdb文件的时间戳与名称问题

2.3、如何确定要找哪些pdb文件?

3、使用Windbg静态分析dump文件以及动态调试程序的一般步骤

4、确定发生异常或崩溃的业务模块,到业务模块的函数中去排查

5、在分析从任务管理器中导出的dump文件时可能需要使用.effmach命令切换一下上下文

5.1、操作系统位数与程序位数

5.2、使用.effmach命令将线程上下文切换到32位

6、Windbg动态调试目标进程时遇到因为调用了IsBadWritePtr或者IsBadReadPtr引发的异常

7、什么时候使用Windbg静态分析?什么时候使用Windbg动态调试?

7.1、程序发生死循环或死锁问题时

7.2、程序发生异常,但异常捕获模块没有捕获到

7.3、异常捕获模块感知到了异常,但导出dump文件时产生了二次崩溃,dump文件生成失败

7.4、程序运行过程中检测到不正常,直接调用abort函数强制结束进程,导致程序闪退

7.5、用IDE调试程序时产生异常,但看不到有效的函数调用堆栈,可以尝试使用Windbg进行动态调试

7.6、程序启动崩溃或失败时

7.7、程序弹出报错提示框时

8、有时可能需要使用反汇编工具IDA查看汇编代码上下文去辅助定位问题

9、熟悉Windbg命令

10、最后


C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/125529931

版权说明:如非注明,本站文章均为 扬州驻场服务-网络设备调试-监控维修-南京泽同信息科技有限公司 原创,转载请注明出处和附带本文链接

请在这里放置你的在线分享代码
«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接