Windbg是一款适用于Windows系统的调试工具,相比较于Visual Studio,这是一个轻量级的调试工具,所谓轻量级指的是安装文件较小,但调试功能,却比VS更为强大,还有另外一个用途,可以用来分析dump数据。虽然WinDbg也提供图形界面操作,但强大的地方还是有着强大的调试命令,一般情况会结合GUI和命令行进行操作,常用的视图有:局部变量、全局变量、调用栈、线程、命令、寄存器、白板等,其中“命令”视图是默认打开的。Windbg还有一个强大的蓝屏分析修复功能,可以分析dmp文件,帮助用户找出电脑蓝屏的原因并以及解决。

Windbg

软件特色

通过 WinDbg 中提供的多种功能和编程优势来改进调试体验

1、连接设置和召回:

保存最近的目标和会话配置。 可以从 “文件” 菜单中快速重启已保存的项目。

2、深色主题:

通过选择 “文件>设置”启用用户界面首选项,如深色主题。

3、键盘导航:

使用 Ctrl+Tab 等键盘快捷方式,可在窗口之间轻松移动。

4、转储文件处理器检测:

利用处理器体系结构的自动检测并快速设置托管调试。

5、性能改进:

使用异步加载的工具窗口,并根据需要取消它们。 运行命令时,WinDbg 可以停止加载本地变量、监视窗口或其他窗口。

WinDbg工具窗口介绍

1、命令:

提供改进的 DML 支持、文本突出显示和搜索(包括正则表达式)。

2、源代码:

提供语法突出显示和其他与大多数新式文本编辑器类似的常规改进。

3、反汇编:

在滚动时保持当前指令的突出显示。

4、断点:

显示所有当前断点、一键切换和命中计数。

5、脚本:

使你能够更轻松地开发 JavaScript 和 NatVis 扩展,并使用错误突出显示和 IntelliSense。

6、数据模型:

提供可扩展和可浏览版本的 dx 和 dx -g 命令。 此功能有助于在 NatVis、JavaScript 和 LINQ 查询的基础上创建功能强大的表。

7、局部变量和监视:

命令使用的 dx 数据模型为基础,它们都受益于与其他数据模型窗口相同的功能。

8、内存:

具有突出显示功能和滚动功能的优化。

9、日志:

提供 WinDbg 内部详细信息的记录,可以查看日志进行故障排除或监视长时间运行的命令。

开始调试说明

通过 WinDbg 中提供的多种功能和编程优势来改进调试体验:

1、集成时间旅行调试(TTD)

在启动或附加到进程时,选择“使用时间旅行调试记录”选项。 WinDbg 设置 TTD,开始录制,之后打开跟踪文件。

2、启动应用包

通过单击鼠标调试通用应用或后台任务。

3、附加到进程:

使用 “附加 ”视图获取正在运行的进程、访问更简单的配置和搜索支持的详细摘要。

功能介绍

1、蓝屏转储分析

DMP文件加载:通过File -> Open Crash Dump加载蓝屏生成的DMP文件,显示崩溃时的详细信息。

自动错误分析:执行!analyze -v命令,生成包含错误代码、参数及可能原因的详细报告。

堆栈跟踪:使用kb或kbn命令查看完整的函数调用链,定位崩溃发生的代码位置。

2、实时调试

本地与远程调试:支持通过网络或本地连接调试正在运行的系统或应用程序,适用于诊断复杂问题。

多目标调试:可同时调试多个转储文件或实时目标,提升多场景问题排查效率。

3、内存与资源分析

内存布局查看:分析内存转储文件,识别内存泄漏、溢出或非法访问问题。

线程与资源管理:通过!threadpool、!locks等命令分析线程池、锁竞争等资源管理问题。

4、高级诊断工具

托管代码支持:加载SOS扩展(如.loadby sos mscorwks),分析.NET应用程序的内存占用和异常。

符号缓存优化:配置本地符号缓存目录(如C:Symbols),减少重复下载,提升调试速度。

下载地址

远程下载