1.2 Windows调试工具集
应用场合 | 一组调试器和工具 |
当前版本 | 6.6.0007.5 |
下载地址 | http://www.microsoft.com/whdc/ddk/debugging/ |
Windows调试工具集(Debugging ToolsforWindows)是一个内容丰富的软件包,它包含了一些功能强大的调试器和工具,可以极大地提高开发人员的工作效率。
在下载地址中可以选择32位或者64位(Itanium和x64)等不同版本。软件包的安装过程非常简单,选择“Express”安装模式将安装所有必要的工具。这里需要提醒一点:如果你打算开发定制的调试扩展(DebuggerExtension,我们将在第11章“编写定制的调试扩展”中看到相关的内容),那么必须选择“Custom”安装模式,并且选中安装SDK。在表1.1中给出了在这个软件包中包含的所有工具。
表 1.1 在Windows调试工具集中包含的工具
程序名 | 描述 |
agestore.exe | 一个很方便的文件删除工具,它能够根据最近访问日期来删除文件。 |
cdb.exe | 基于控制台(Console)的用户态调试器。基本上等同于NTSD。 |
dbengprx.exe | 一个轻量级的代理服务器,用于在两台不同的机器之间转发数据。 |
dbgrpc.exe | 用于查询和显示Microsoft远程过程调用(RemoteProcedureCall,RPC)信息的工具。 |
dbgsrv.exe | 用于远程调试的进程服务器。 |
dumpchk.exe | 用于验证内存转储文件(DumpFile)的工具。 |
gflags.exe | 用于启用或者禁止系统配置信息的工具。 |
kd.exe | 一个内核态的调试器。 |
kdbgctrl.exe | 用于控制和配置内核态调试连接的工具。 |
kdsrv.exe | 在内核态调试中使用的连接服务器。 |
kill.exe | 一个基于控制台的工具,用于终止进程。 |
logger.exe | 记录进程行为(例如函数调用)的工具。 |
logviewer.exe | 用于查看logger.exe生成的日志文件的工具。 |
ntsd.exe | 一个基于控制台的用户态调试器。基本上等同于CDB。 |
remote.exe | 用于远程操纵控制台程序的工具。 |
rtlist.exe | 远程进程列表查看器。 |
symchk.exe | 用于验证符号文件或者从符号服务器上下载符号文件的工具。 |
symstore.exe | 用于创建和维护符号库的工具。 |
tlist.exe | 列出所有正在运行的进程的工具。 |
umdh.exe | 用于检测内存泄漏的工具。 |
windbg.exe | 带有图形用户界面的用户态和内核态调试器。 |
显然,最重要的工具就是调试器本身。在第2章“调试器简介”和第3章“调试器揭密”中,我们将详细阐述调试器的工作原理,配置过程,以及最有效的使用方式。
在本章中,我们将详细介绍在本书中使用的所有工具。如果在工具的“下载地址”列中包含的信息是“Windows调试工具集的一部分”,那么就表示需要安装Windows调试工具集。
请注意,在撰写本书的时候,Windows调试工具集的最新版本为6.6.0007.5。在你阅读本书时,很可能已经发布了一个更新的版本。尽管版本可能不同,但在调试器的输出结果中可能只是存在细微的差异,因此本书的所有内容仍然是适用的。在调试器的下载地址中还包含了一组之前的版本(前2到3个版本)。如果你希望使用与本书中相同的版本,那么可以下载版本号为6.6.0007.5的Windows调试工具集。