如何針對 Windows XP 或 Windows Server 2003 中的 STOP 0xC000021A 錯誤進行疑難排解
本文提供 STOP 0xC000021A 錯誤的進階疑難排解步驟。
家庭使用者:本文主要提供給支援專員與 IT 專業人員使用。 如果您要在使用電腦時尋找有關藍色畫面錯誤碼的詳細資訊,請參閱 針對藍色畫面錯誤進行疑難排解。
適用於:Windows 10 - 所有版本、Windows Server 2012 R2
原始 KB 編號: 156669
本文主要為進階電腦使用者提供。 如果您不熟悉進階疑難排解,可以尋求他人的協助或連絡技術支援。
當您使用執行「適用于」一節中所列其中一個作業系統的伺服器或工作站時,您可能會收到下列錯誤訊息:
STOP: c000021a {嚴重系統錯誤}
Windows 登入處理系統處理序意外終止,狀態為 0xc0000034 (0x00000000 0x0000000)
系統已關閉。
注意事項
括弧中的參數是您的電腦群組態特有的,而且每個出現的參數可能不同。
原因
當 Winlogon.exe 或 Csrss.exe 失敗時,就會發生 STOP 0xC000021A 錯誤。 當 Windows NT 核心偵測到其中一個處理序已停止時,它會停止系統並引發 STOP 0xC000021A 錯誤。 此錯誤可能有幾個原因,包括:
- 已安裝不相符的系統檔案。
- Sservice Pack 安裝失敗。
- 用來還原硬碟的備份程式未正確還原可能正在使用的檔案。
- 已安裝不相容的協力廠商程式。
解決方案
若要針對此問題進行疑難排解,您必須判斷哪些處理序失敗以及其原因。
若要判斷哪個處理序失敗,如果 Dr. Watson 還不是預設偵錯工具,請將其註冊為預設系統偵錯工具。 Dr. Watson for Windows NT 記錄有關記錄檔 Drwtsn32.log 之處理序失敗的診斷資訊。 此外,您可以設定此程式來產生失敗處理序的記憶體傾印檔案。 然後您可以分析偵錯工具中的檔案,以判斷處理序失敗的原因。
若要設定 Dr. Watson 來捕捉使用者模式程式錯誤,請遵循下列步驟:
在命令提示字元輸入 System Root\System32\Drwtsn32.exe -I,然後按下 Enter。
此命令會將 Dr. Watson 設定為預設系統偵錯工具。
在命令提示字元中,輸入 System Root\System32\Drwtsn32.exe,然後選取下列選項:
- 附加到現有的記錄檔案
- 建立損毀傾印
- 可視化通知
在電腦從 STOP 0xC000021A 錯誤重新開機之後,執行 Dr. Watson (Drwtsn32.exe)。
檢視 Dr. Watson 記錄檔,以判斷可能造成問題的使用者模式處理序。
如果 Dr. Watson 記錄檔未包含足夠的資訊來判斷問題的原因,請分析 User.dmp 檔案以判斷 STOP 0xC000021A 錯誤的原因。
如果 Dr. Watson 未為 Winlogon.exe 或 Csrss.exe 建立 User.dmp 檔案,您可能必須使用不同的工具來產生失敗的處理序記憶體傾印檔案。 如需詳細資訊,請參閱下列文章:
241215 如何使用 Userdump.exe 工具建立傾印檔案
注意事項
請遵循知識庫文章中的指示,針對因例外狀況而關閉的處理序進行疑難排解。 當您遵循這些指示時,請監視下列處理序,以針對 STOP 0xC000021A 錯誤進行疑難排解:
- Winlogon.exe
- Csrss.exe
大部分的 STOP 0xC000021A 錯誤都會因為 Winlogon.exe 失敗而發生。 這通常是因為協力廠商圖形識別和驗證 (GINA) DLL 錯誤所導致。 GINA 是可取代的 DLL 元件,由 Winlogon.exe 載入。 GINA 會實作互動式登入模型的驗證原則。 GINA 會執行所有識別和驗證使用者互動。
某些類型的遠端控制軟體通常會取代預設的 Windows GINA DLL (Msgina.dll)。 好的第一步是檢查系統,以查看它是否有協力廠商 GINA DLL。 為此,請找出下列登錄機碼:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinlogonValue = GinaDLL REG_SZ
- 如果 Gina DLL 值存在,而且它是 Msgina.dll 以外的任何值,則可能表示協力廠商產品已變更此值。
- 如果此值不存在,系統會使用 Msgina.dll 作為預設 GINA DLL。 如果在安裝新的或更新的裝置磁碟機、系統服務或協力廠商程式之後第一次發生此錯誤,則應該移除或停用新軟體。 請連絡軟體製造商,瞭解是否有可用的更新。
上次的正確設定
如果本文中的先前步驟無法解決問題,請使用上次的正確設定來啟動電腦。 若要使用上次的正確設定來啟動電腦,請遵循下列步驟。
注意事項
由於 Microsoft Windows 有多種版本,因此下列步驟可能因您的電腦而有所差異。 如有需要,請參閱您的產品說明文件,以完成這些步驟。
選取 [開始]> [關閉]。
選取 [重新啟動]> [確定]。
在指定的時間按 F8:
- 針對 x86 型電腦:當文字畫面出現,然後消失時,請按 F8。 (文字畫面可能包含記憶體測試、BIOS 的相關列及其他列。) 也可能出現提示,告訴您何時按 F8。
- 針對以 Itanium 架構為基礎的電腦:從開機功能表選取之後,請按 F8。 可能有提示會告訴您何時按 F8。
使用方向鍵選取 [上次的正確設定],然後按下 ENTER。
NUM LOCK 必須先關閉,數字鍵台上的方向鍵才能運作。
使用方向鍵反白顯示作業系統,然後按 Enter。
注意事項
- 選擇 [上次的正確設定] 啟動選項可讓您從新新增的驅動程式這類問題中復原,這類驅動程式可能不適合您的硬體。 不過,它無法解決因驅動程式或檔案損毀或遺失所造成的問題。
- 當您選擇 [上次的正確設定] 選項時,只會還原登錄機碼 HKLM\System\CurrentControlSet 中的資訊。 您在其他登錄機碼中所做的任何變更都會保留。
使用復原主控台移除不相容的軟體
如果本文中的先前步驟無法解決問題,請使用復原主控台移除不相容的軟體。 說明如何執行此動作的完整步驟已超出本文的範圍。 不過,您可以使用下列文章作為指引:
816104 如何在 Windows Server 2003 中使用復原主控台取代驅動程式
326215 如何在未啟動的 Windows Server 2003 電腦上使用復原主控台
307654 如何安裝及使用 Windows XP 的修復主控台
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: