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

讓 XP 不再彈出錯誤提示視窗:Dr. Watson、錯誤報告與例外處理完全關閉

編輯:Windows XP 系統介紹

Windows XP 程式當機時會彈出「發生錯誤,需要關閉」對話框、Dr. Watson 偵錯視窗、錯誤報告傳送提示,干擾工作、佔用資源、洩露資訊。本文提供徹底關閉錯誤報告、停用 Dr. Watson、設定例外處理行為的多種方法。

關閉錯誤報告服務

圖形介面

  1. 我的電腦右鍵 → 內容 → 進階 → 錯誤報告。
  2. 選擇「停用錯誤報告」,可勾選「發生嚴重錯誤時通知我」。

群組原則 (企業部署)

  1. gpedit.msc → 電腦設定 → 系統管理範本 → 系統 → 錯誤報告。
  2. 「停用錯誤報告」 → 「已啟用」。
  3. 「不顯示錯誤報告的使用者介面」 → 「已啟用」。

登錄檔

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PCHealth\ErrorReporting]
"DoReport"=dword:00000000
"ShowUI"=dword:00000000

停用 Dr. Watson (Drwtsn32)

圖形介面

  1. 執行 drwtsn32。
  2. 取消勾選所有選項,僅保留「建立損毀傾印檔案」 (視需求)。
  3. 「損毀傾印檔案」路徑設為非系統碟、限制大小。

登錄檔徹底停用

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug]
"Auto"="0"
"Debugger"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DrWatson]
"AutoDump"=dword:00000000
"CreateCrashDump"=dword:00000000

刪除現有傾印檔案

del /q /f "%SystemRoot%\DrWatson\*.dmp"
del /q /f "%SystemRoot%\system32\*.dmp"
del /q /f "%USERPROFILE%\Local Settings\Application Data\Microsoft\DrWatson\*.log"

設定未處理例外行為 (進階)

登錄檔 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug:

  • Auto = 0:不自動啟動偵錯器,直接終止程式 (預設關閉錯誤報告/Dr.Watson 後行為)。
  • Auto = 1:自動啟動 Debugger 指定的偵錯器 (如 drwtsn32 -p %ld -e %ld -g 或 vsjitdebugger.exe Visual Studio Just-In-Time)。

應用程式層面例外處理 (開發者)

  • SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX | SEM_NOOPENFILEERRORBOX):進程層級抑制錯誤對話框。
  • AddVectoredExceptionHandler / SetUnhandledExceptionFilter:自訂未處理例外處理器,記錄日誌、優雅退出、重啟服務。

驗證與測試

  1. 建立測試程式 (C++/C#/VB6) 故意觸發存取違規、除以零、堆疊溢位。
  2. 執行觀察:無對話框彈出、進程直接終止、事件檢視器記錄 Application Error (Event ID 1000/1001)。
  3. 檢查 %SystemRoot%\DrWatson、%TEMP% 無新增 .dmp/.log 檔案。

注意事項

  • 關閉錯誤報告/Dr.Watson 將失去診斷程式當機根因的關鍵資訊 (呼叫堆疊、模組清單、暫存器狀態)。
  • 生產環境建議:關閉使用者介面,保留自動傾印 (MiniDump) 至專用資料夾,配合集中日誌收集 (Sysmon/Winlogbeat) 分析。
  • 開發/測試環境:保留完整偵錯功能 (Visual Studio JIT, WinDbg, ProcDump)。

總結

徹底關閉 XP 錯誤提示視窗:停用錯誤報告服務 → 停用 Dr. Watson 自動偵錯 → 設定 AeDebug Auto=0 → 刪除歷史傾印檔案。生產環境請保留 MiniDump 自動產生並集中收集,兼顧使用者體驗與事後診斷能力。

Copyright © Windows教程網 All Rights Reserved