如何设置WinDbg自动转储程序崩溃时的?

摘要:#通过WinDbg分析转储文件 在调试过程中回遇到一些很奇怪的问题,编译器调试无法正常定位问题,所以需要WinDbg,这篇博客是对照多篇文档的简易的入门整理 ##一、必备知识 ###1.1、下载WinDbg 微软文档 下载 Windows
通过WinDbg分析转储文件 在调试过程中回遇到一些很奇怪的问题,编译器调试无法正常定位问题,所以需要WinDbg,这篇博客是对照多篇文档的简易的入门整理 一、必备知识 1.1、下载WinDbg 微软文档 下载 Windows 调试工具 - WinDbg - Windows drivers | Microsoft Learn WinDbg Preview 是 WinDbg 的新版本。WinDbg Preview 使用与 WinDbg 相同的基础引擎,因此所有命令、扩展和工作流的运行仍然与从前相同。 文档中有三种下载方式,我使用了应用商店的方式,可以在没有环境的机器上独立使用; WinDbg Preview - Microsoft Store 应用程序 1.2、WinDbg命令行选项 WinDbg 命令行选项 - Windows drivers | Microsoft Learn 1.3、微软系列文档 使用 WinDbg 进行调试 - Windows drivers | Microsoft Learn 1.4、用户模式转储文件类型 1.5、 完整用户模式转储 完整的用户模式转储_是基本的用户模式转储文件。 完整的用户模式转储文件包括: 进程的整个内存空间。 程序的可执行映像。 句柄表。 其他信息,可帮助调试器在转储发生时重建正在使用的内存。 1.6、Minidumps 小型转储文件的大小和内容因要转储的程序、执行转储的应用程序和所选选项而异。 有时,小型转储文件的大小适中,并且包含完整的内存和句柄表。 在其他情况下,小型转储文件要小得多。 例如,小型转储文件可能仅包含有关单个线程的信息,也可能仅包含有关堆栈中引用的模块的信息。 术语 minidump 具有误导性,因为最大的小型转储文件包含的信息比完整的用户模式转储文件更多。 二、在程序崩溃时自动创建dump \注册表中位置:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps 新建REG_DWORD类型、名称为DumpCount的元素值为10; 新建REG_EXPAND_SZ类型、名称为DumpFolder的元素值为%LOCALAPPDATA%\CrashDumps; DUMP存放位置:C:\Users\duwenlong\AppData\Local\CrashDumps 三、开始使用WinDbg分析mimidumps转储文件 因为项目时间原因,而且这篇不是系列的文章,所以我只记录如何分析转储文件; 启动WinDbg通过从“文件”菜单中选择“打开故障转储”或按 Ctrl+D 打开转储文件。 出现“打开故障转储”对话框时,在“文件名”框中输入故障转储文件的完整路径和名称,或使用对话框选择正确的路径和文件名。 选择正确的文件后,选择“打开”。
阅读全文