Windows 7 執行程式時彈出「<程式名稱> 已停止運作」,細節顯示 APPCRASH、故障模組常為 xxx.dll、ntdll.dll、KERNELBASE.dll 等。本文提供三層次解決方案:依故障模組定位卸載 (最快)、精簡啟動項/清理殘留 (治本)、Windbg 分析 Dump 檔案 (專業級根因分析),助您從表象直達核心原因。
nvoglv32.dll、acrobat.dll、msvcr100.dll)。nv* → NVIDIA 顯卡驅動ati* / amd* → AMD 顯卡驅動acrobat / acrord → Adobe Acrobat/Readermsvcr* / msvcp* → Visual C++ Redistributablekernel32 / ntdll / KERNELBASE → 系統核心/通用運行庫,需進階分析msconfig → 「啟動」索引標籤 → 僅保留 ctfmon.exe (輸入法) 與必要安全軟體,其餘全取消勾選 → 確定 → 重開機。sfc /scannow 修復系統檔案。C:\Windows\Minidump\ (小型傾印檔 *.dmp) 或 C:\Windows\MEMORY.DMP (完整核心傾印)。File → Open Crash Dump → 選擇 .dmp 檔。!analyze -v (詳細分析)。| 輸出欄位 | 含義 | 行動指引 |
|---|---|---|
FAULTING_MODULE | 導致崩潰的模組 (exe/dll) | 鎖定責任軟體/驅動 |
EXCEPTION_CODE | 例外代碼 (0xC0000005=存取違規, 0xC0000409=堆疊緩衝區過量檢測失敗...) | 查閱 NTSTATUS 代碼表定位錯誤類型 |
STACK_TEXT | 呼叫堆疊回溯 | 由下往上讀,找第一個非系統模組的函數 |
MODULE_NAME / IMAGE_NAME | 模組名稱/映像名稱 | 對應具體檔案 |
BUCKET_ID | 微軟分類桶 ID | 搜尋該 ID 可找到已知修補/熱修復 |
# Windbg 指令列設定符號路徑
.sympath srv*C:\Symbols*https://msdl.microsoft.com/download/symbols
.reload
# 再執行 !analyze -v
| 故障模組 | 所屬軟體/驅動 | 典型解決 |
|---|---|---|
nvd3dum.dll / nvoglv32.dll | NVIDIA 顯卡驅動 (DirectX/OpenGL) | 乾淨安裝最新/穩定版驅動 (DDU 卸載後重裝) |
atidxx32.dll / atioglxx.dll | AMD 顯卡驅動 | 同上 |
ig*.dll | Intel 核顯驅動 | 更新核顯驅動、關閉硬體加速 |
msvcr100/110/120/140.dll | VC++ 2010/2012/2013/2015-2022 運行庫 | 修復/重裝對應 VC++ Redist |
ntdll.dll / KERNELBASE.dll | 系統核心/基礎 API | 需 Windbg 分析堆疊定位上層呼叫者 |
從「看故障模組猜軟體」到「Windbg 精準定位堆疊」,三層次方案覆蓋 Win7 APPCRASH 從常見到疑難的完整解決路徑。建議先試方法一、二,無效再投入方法三,事半功倍。