Come risolvere un errore "STOP 0xC000021A" in Windows XP o Windows Server 2003

In questo articolo vengono illustrate le procedure avanzate di risoluzione dei problemi che generano l'errore STOP 0xC000021A.

Utenti privati: questo articolo è destinato agli addetti al supporto e ai professionisti IT. Per maggiori informazioni su un codice di errore con schermata blu nel computer in uso, consultare Risoluzione dei problemi relativi agli errori con schermata blu.

Si applica a: Windows 10 - tutte le edizioni, Windows Server 2012 R2
Numero originale della Knowledge Base: 156669

L'articolo è destinato a utenti esperti. Se non si ha familiarità con la risoluzione dei problemi di livello avanzato, è possibile richiedere assistenza o contattare il supporto tecnico.

Quando si utilizza un server o una workstation in cui è in esecuzione uno dei sistemi operativi elencati nella sezione "Si applica a", potrebbe essere visualizzato un messaggio di errore analogo al seguente:

STOP: c000021a {Fatal System Error}
Il processo di accesso a Windows è terminato in modo imprevisto con stato di 0xc0000034 (0x00000000 0x0000000)
Il sistema è stato chiuso.

Nota

I parametri tra parentesi sono specifici della configurazione del computer in uso e potrebbero variare in situazioni differenti.

Causa

L'errore "STOP 0xC000021A" si verifica nell'eventualità di un errore di Winlogon.exe o di Csrss.exe. Quando il kernel di Windows NT rileva che uno di questi processi è stato interrotto, blocca il sistema e genera l'errore "STOP 0xC000021A". Questo errore potrebbe avere numerose cause, tra cui:

  • Sono stati installati file di sistema non corrispondenti.
  • L'installazione del Service Pack non è andata a buon fine.
  • Un programma di backup utilizzato per ripristinare un disco rigido non ha ripristinato in modo corretto i file che erano in uso al momento dell'operazione.
  • È stato installato un programma di terze parti non compatibile.

Risoluzione

Per risolvere questo problema, è necessario determinare quali processi sono stati interrotti e per quale motivo.

Per determinare i processi interrotti, registrare Dr. Watson come strumento di debug di sistema predefinito, se non lo è già. Dr. Watson per Windows NT registra le informazioni di diagnostica sugli errori dei processi in un file di registro (Drwtsn32.log). Inoltre, è possibile configurare questo programma per creare file di dump della memoria dei processi non riusciti. È quindi possibile analizzare i file in un debugger per determinare il motivo per cui un processo ha esito negativo.

Per configurare Dr. Watson in modo che registri gli errori del programma in modalità utente, attenersi alla seguente procedura:

  1. Al prompt dei comandi, digitare Directory principale di sistema\System32\Drwtsn32.exe -I e quindi premere INVIO.

    Questo comando consente di configurare Dr. Watson come debugger di sistema predefinito.

  2. Al prompt dei comandi, digitare Directory principale di sistema\System32\Drwtsn32.exe e quindi selezionare le opzioni riportate di seguito:

    • Aggiungi al registro file esistente
    • Crea dettagli arresto anomalo del sistema
    • Avviso visuale
  3. Dopo aver riavviato il computer in seguito all'errore "STOP 0xC000021A", eseguire Dr. Watson (Drwtsn32.exe).

  4. Visualizzare il file di registro di Dr. Watson per determinare quale processo in modalità utente potrebbe essere la causa del problema.

  5. Se il file di registro di Dr. Watson non contiene informazioni sufficienti per determinare la causa del problema, analizzare il file User.dmp per determinare la causa dell'errore "STOP 0xC000021A".

    Se Dr. Watson non ha creato un file User.dmp per Winlogon.exe o Csrss.exe, potrebbe essere necessario utilizzare uno strumento diverso per generare il file dei dettagli della memoria del processo che non è riuscito. Per maggiori informazioni, consultare l'articolo seguente:

    241215 Come utilizzare lo strumento Userdump.exe per creare un file di dettagli

    Nota

    Per risolvere i problemi relativi a un processo che si è bloccato con un'eccezione, attenersi alle istruzioni riportate nell'articolo della Knowledge Base. Mentre si seguono queste istruzioni, per risolvere l'errore "STOP 0xC000021A", è consigliabile controllare i processi riportati di seguito:

    • Winlogon.exe
    • Csrss.exe

    La maggior parte degli errori di tipo "STOP 0xC000021A" si verifica a causa di un errore di Winlogon.exe. Questo errore si verifica in genere a causa di una DLL di identificazione grafica e autenticazione (GINA) errata. GINA è un componente DLL sostituibile caricato da Winlogon.exe. GINA implementa il criterio di autenticazione del modello di accesso interattivo. GINA esegue tutte le interazioni utente di identificazione e di autenticazione.

Per alcuni tipi di software di controllo remoto è molto frequente la sostituzione del DLL GINA (Msgina.dll) predefinita di Windows. Per questo motivo è buona prassi esaminare innanzitutto il sistema per verificare se è presente una DLL GINA di terze parti. Per effettuare questa operazione, individuare la seguente chiave del Registro di sistema:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinlogonValue = GinaDLL REG_SZ

  • Se il valore di DLL GINA è presente ed è diverso da quello di Msgina.dll, questo indica probabilmente che un prodotto di terze parti ha modificato il valore.
  • Se il valore non è presente, il sistema utilizza Msgina.dll come DLL GINA predefinita. Se questo errore si è verificato per la prima volta dopo l'installazione di un driver di periferica nuovo o aggiornato, del servizio di sistema o di un programma di terze parti, la nuova applicazione deve essere rimossa o disabilitata. Contattare il produttore del software per verificare se è disponibile un aggiornamento.

Ultima configurazione valida del sistema

Se la procedura descritta in precedenza in questo articolo non consente di risolvere il problema, avviare il computer utilizzando l'ultima configurazione valida nota. Per avviare il computer utilizzando l'ultima configurazione valida, attenersi alla seguente procedura:

Nota

Considerando l'esistenza di diverse versioni di Microsoft Windows, la procedura potrebbe variare da computer a computer. In questo caso, fare riferimento alla documentazione del prodotto per completare la procedura.

  1. Selezionare il pulsante Start>Arresta il sistema.

  2. Selezionare Riavvia il sistema>OK.

  3. Premere F8 al momento indicato:

    • Per un computer basato su x86: quando viene visualizzata per brevissimo tempo una schermata di testo e poi scompare, premere F8. (La schermata del testo può includere un test della memoria, righe sul BIOS e altre righe). Potrebbe anche essere presente un prompt che indica quando premere F8.
    • Per un computer basato su architettura Itanium: dopo avere eseguito la selezione dal menu di avvio, premere F8. Potrebbe essere visualizzato un messaggio che indica quando premere F8.
  4. Utilizzare i tasti di direzione per selezionare Ultima configurazione valida nota e quindi premere INVIO.

    Per poter utilizzare i tasti di direzione del tastierino numerico, la funzionalità BLOC NUM deve essere disattivata.

  5. Utilizzare i tasti di direzione per selezionare un sistema operativo e quindi premere INVIO.

Nota

  • La scelta dell'opzione di avvio "Ultima configurazione valida nota" offre un metodo per risolvere i problemi, ad esempio nel caso di un driver appena aggiunto che potrebbe non essere appropriato per l’hardware in uso. Tuttavia, l'opzione non consente la risoluzione di problemi causati da driver o file danneggiati o mancanti.
  • Quando si sceglie l'ultima configurazione valida nota, vengono ripristinate solamente le informazioni contenute nella chiave del Registro di sistema HKLM\System\CurrentControlSet. Qualsiasi modifica apportata ad altre chiavi del Registro di sistema verrà mantenuta.

Rimozione di applicazioni incompatibili utilizzando la Console di ripristino di emergenza

Se la procedura descritta in precedenza in questo articolo non consente di risolvere il problema, rimuovere le applicazioni incompatibili utilizzando la Console di ripristino di emergenza. La procedura completa che descrive come effettuare questa operazione non rientra negli argomenti discussi in questo articolo. Tuttavia, è possibile utilizzare gli articoli seguenti come linee guida:

816104 Sostituzione di un driver utilizzando la Console di ripristino di emergenza in Windows Server 2003
326215 Utilizzo della Console di ripristino di emergenza in un computer basato su Windows Server 2003 che non è possibile avviare
307654 Installazione e utilizzo della Console di ripristino di emergenza in Windows XP