前言:WinDbg是微軟開(kāi)發(fā)的免費(fèi)源代碼級(jí)的調(diào)試工具。WinDbg可以用于Kernel模式調(diào)試和用戶(hù)模式調(diào)試,還可以調(diào)試Dump文件。本文的討論是在安裝了Debugging Tools for Windows 的前提下進(jìn)行的,下載地址可以參考我之前的文章。WinDbg對(duì)于dump文件的調(diào)試可以通過(guò)菜單設(shè)置Symbol File Path、Source File Path ,并可設(shè)置多個(gè)路徑。
1、 打開(kāi)Dump格式文件
打開(kāi)WinDbg,通過(guò)菜單[File] à [Open Crash dump] 選擇dump文件打開(kāi),也可通過(guò)CMD打開(kāi)Dos命令窗口,切換到WinDbg所在目錄,利用命令:
WinDbg –z “D:\Lines2009-7-25-22-20-33-900.dmp”
-z表示路徑

圖1.1 利用WinDbg打開(kāi)dump文件
載入dump文件顯示如圖:

圖1.2 WinDbg界面
2、 分析dump文件
若生成的dump文件在本機(jī),dump文件中將包含調(diào)試需要的PDB文件及源代碼路徑,若不在本機(jī),可以通過(guò)WinDbg菜單[File] à [Symbol File path] 及 [Source File Path] 分別設(shè)置PDB文件路徑和源代碼路徑。如果程序涉及到DLL,需要將EXE、DLL所有涉及的PDB、源代碼路徑都包括。使用命令:
!analyze –v
將分析dump文件,并顯示程序崩潰處于的代碼行:

圖1.3 分析dump 文件