1.首要條件
專案>右鍵>屬性>建置>輸出>進階(D)...>輸出>偵錯訊息(E):>僅限 Pdb
參考來源:.NET 知識高裝檢 - .pdb 檔、編譯最佳化與偵錯
2.執行ProcDump生成記憶體傾印檔案
procdump -accepteula -ma [TargetApp.exe] [D:\target-app_dumps]
-accepteula
:自動接受終端使用者授權協議(EULA),避免在執行時出現提示-ma
:生成完整的記憶體傾印,包括所有的記憶體內容,提供最詳細的調試資訊TargetApp.exe
:目標應用程式的名稱,即需要監控的程式D:\target-app_dumps
:指定記憶體傾印檔案的儲存路徑
3.執行WinDbg分析問題
安裝來源安裝 Windows 調試程式
起手式
執行!sym noisy
- 啟用詳細符號載入
執行.sympath+ [Pdb路徑]
- 設定符號搜尋路徑
執行.reload執行ld*
- 強制載入符號
執行.loadby sos clr
- 載入.NET類別資訊偵錯用
執行.chain
- 檢查載入是否成功
再依問題類型下對應指令查詢
參考來源:真实案例大全