Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Win7 無法開啟 .dmp 藍畫面記憶體傾印?WinDbg 分析工具完整教學

編輯:Win7 系統應用技巧

Win7 藍畫面 (BSOD) 後會在 `C:\Windows\Minidump` 產生 `.dmp` 檔案,記錄崩潰時的記憶體狀態。雙擊無法開啟,需使用 Microsoft 官方 WinDbg (Windows Debugger) 分析,找出導致藍畫面的驅動程式/模組。

工具準備

  1. 下載 Windows SDK 或獨立 Debugging Tools for Windows (包含 WinDbg)
    官方下載:Windows SDK → 安裝時僅勾選 "Debugging Tools"
  2. 安裝完成後,開始選單會出現 Debugging Tools for Windows (x86) / (x64) → 選擇與系統位元數相符的 WinDbg
  3. Debugging Tools 安裝 開始選單 WinDbg WinDbg 介面

開啟 .dmp 分析步驟

  1. 開啟 WinDbg (建議以管理員身分執行)
  2. 選單 File → Open Crash Dump (或 `Ctrl`+`D`) → 選擇 `.dmp` 檔案 (通常在 `C:\Windows\Minidump\` 或 `C:\Windows\MEMORY.DMP`)
  3. 提示「Open this dump file as a workspace?」→ 點 Yes
  4. 開啟 Crash Dump 工作區提示 開啟成功

關鍵分析指令 (命令列底部輸入)

指令用途輸出關鍵資訊
`!analyze -v`自動完整分析 (最常用)BUGCHECK_CODE、BUGCHECK_STR、MODULE_NAME (故障驅動/模組)、IMAGE_NAME、STACK_TEXT (呼叫堆疊)
`lm`列出載入模組驅動程式名稱、載入位址、時間戳記、路徑
`kv`顯示堆疊回溯 (含框架指標)函式呼叫鏈、引數、返回位址
`!thread`當前執行緒資訊執行緒狀態、優先權、等待物件

結果解讀速查

  • MODULE_NAME / IMAGE_NAME = nvlddmkm.sys → NVIDIA 顯卡驅動 → 更新/降級/乾淨安裝驅動
  • = ntoskrnl.exe / ntkrnlmp.exe → 核心本身,通常非核心問題,往上看堆疊找真正肇因驅動
  • = usbport.sys / usbxhci.sys → USB 控制器/裝置 → 更新晶片組/USB 驅動、拔除可疑 USB 裝置
  • = memory_corruption / hardware → 記憶體硬體錯誤 → 執行 `mdsched.exe` (Windows 記憶體診斷) 或 MemTest86
  • BUGCHECK_CODE 常見: 0x7E (SYSTEM_THREAD_EXCEPTION_NOT_HANDLED)、0xD1 (DRIVER_IRQL_NOT_LESS_OR_EQUAL)、0xA (IRQL_NOT_LESS_OR_EQUAL)、0x1E (KMODE_EXCEPTION_NOT_HANDLED)、0x3B (SYSTEM_SERVICE_EXCEPTION)

替代輕量工具:BlueScreenView / WhoCrashed

  • BlueScreenView (NirSoft, 免費、免安裝、GUI 顯示藍畫面清單、肇因驅動)
  • WhoCrashed (免費版可用、自動下載符號表、生成報告)
  • 適合快速初步判斷,深度分析仍需 WinDbg

符號表設定 (WinDbg 正確解析函式名稱需求)

WinDbg 命令列輸入:


.sympath srv*C:\Symbols*https://msdl.microsoft.com/download/symbols
.reload

或選單 File → Symbol File Path 設定上述路徑,`C:\Symbols` 為本地快取資料夾。

Copyright © Windows教程網 All Rights Reserved