WinDbg使用摘要

2022-02-28 03:48:24 字數 2279 閱讀 9388

1、如何抓取dump檔案。

這要分兩種情況:

第二種情況: 對於win2k3作業系統是沒有上面說到的功能的,當然上面的方法也是不完善的,因為它不能在程式崩潰的那一刻抓取到最適合的dump檔案。可以通過adplus命令來抓取。例如:

adplus -hang -pn w3wp.exe -o c:\dumps

該命令立刻把w3wp.exe的full dump抓取到c:\dumps資料夾內。

adplus -hang -p 81388 -o c:\dumps 

該命令立刻把81388這個程序的full dump抓取到c:\dumps資料夾內。

adplus -crash -pn w3wp.exe -fullonfirst -o c:\dumps

adplus -crash -p 81388 -fullonfirst -o c:\dumps

該命令會通過監視程序w3wp.exe或81388的執行,在當第一次出現異常時記錄一次完整的dump

adplus -crash -pn w3wp.exe  -o c:\dumps

該命令也是在w3wp.exe崩潰時記錄dump,但這是乙個mini dump

#一些常用的引數:

-crash:表示我捕捉的是乙個crash dump。

-p:指定要捕捉的程序id。 -iis表示我們捕捉iis的所有程序。

-quiet:不彈出提示視窗

-fullonfirst:表示我希望在first chance時捕捉完整的dump資訊,也就是程序的所有完整資訊。

-o :後面跟著dump檔案的存放路徑

-c : 指定配置檔案

#配置環境變數:

計算機-->屬性-->高階-->環境變數-->系統環境變數-->

_nt_symbol_path          c:"windows"symbols

為path系統環境變數增加c:\program files\debugging tools for windows (x86)\

#還能通過指定配置檔案來靈活使用adplus,例如可以指定clr發生某種異常時記錄dump等。

#解決在抓取dump過程出現"activex 部件不能建立物件: 'wscript.shell'" 錯誤的方法,執行如下命令:

regsvr32 %windir%"system32"wshom.ocx

#注意:當執行adplus抓取dump後,對應的w3wp.exe程序將會自動**重啟新的程序

2、分析dump檔案。

0:000> .load c:\windows\microsoft.net\framework\v2.0.50727\sos.dll  //載入除錯模組

0:000>!eeheap -gc                                   //檢視託管堆的情況(包括大小)

0:000>!dumpheap -min 85000 -stat          //顯示大小大於85000的對角的統主資訊

0:000>!dumpheap -min 85000                  //顯示大小大於85000的對角的統主資訊                

0:000>!dumpheap -stat                           //該命令顯示程式中所有物件的統計資訊,顯示的大小是物件本身的大小,不包括物件裡面值的大小

0:000>!gcroot 0x34e9bee0                      //來顯示乙個例項的所屬關係

0:000>!dumpheap -mt 790fcb30              //該命令顯示methodtable 790fcb30的詳細資訊

0:000>!dumparray                                 //檢視陣列資訊

0:000>!objsize 012a1ba4                       //物件實際在記憶體中的大小

0:000>lm                                              //檢視載入了哪些模組

0:000>!dumpmt -md 00976d48              //得到類的成員函式詳細資訊

如何安裝windbg並得到第乙個dump檔案

windbg初始體驗,問題來了怎麼辦?

windbg初始體驗2,抓住不放的惡棍(outofmemory案例分析ⅰ)

windbg初始體驗3,剪不斷的鐵鍊(outofmemory案例分析ⅱ)

windbg使用技巧

dt v dms server datarow 376c4b58 8 轉存出資料結構 dt s 4c n dms server 查詢結構體大小 回答本文標題中的問題,步驟如下 第一步,開啟日誌記錄 logopen d output.txt 第二步,執行你想要輸出到文字檔案中的命令 第三步,關閉日誌記...

windbg使用技巧

一 64位系統下分析32位程式 windbg版本 跟windbg的版本無關 32位 or 64位 崩潰程式 32位 system型別 64位 此時需要轉到x86模式下,命令如下 1 load wow64exts 2 sw 二 自動分析命令 analyze v 三 symbol path 作業系統 四...

WinDbg使用基礎

啟動windbg後發現以一般的軟體並沒有什麼差別,選單工具欄,客戶區,狀態列都有,估計作用也差不多 為了學習windbg,讓整個過程盡量可控,我們自己編寫被除錯程式 生成release版本的exe檔案,為模擬一般情況下的除錯我們將exe檔案拷貝到乙個單獨的路徑上。通過windbg的file open...