Condividi tramite


!analyze (WinDbg)

L'estensione !analyze visualizza informazioni sull'eccezione corrente o sul controllo dei bug.

Modalità utente

    !analyze [-v[0..99]] [-f | -hang]
    !analyze [-v[0..99]] -xml [-xmi] [-xcs] [-xmf OutputXmlFile]
    !analyze -c [-load KnownIssuesFile | -unload | -help ]

Modalità kernel

    !analyze [-v[0..99]] [-f | -hang]
    !analyze -show BugCheckCode [BugParameters]
    !analyze [-v[0..99]] -xml [-xmi] [-xcs] [-xmf OutputXmlFile]
    !analyze -c [-load KnownIssuesFile | -unload | -help ]

Parametri generali

-v[0..99]

Visualizza output dettagliato. È possibile visualizzare altre informazioni specificando un numero compreso tra 0 e 99. Se non si specifica un numero, il valore predefinito è 1. È anche possibile specificare Molto dettagliato (-vv) per visualizzare tutte le informazioni disponibili.

Per la modalità utente, -v6 visualizza gli elementi individuati a livello globale e in ogni thread.

-f

Genera l'output dell'eccezione !analyze . Usare questo parametro per visualizzare un'analisi delle eccezioni anche quando il debugger non rileva un'eccezione.

-appendere

Genera l'output di !analyze hung-application. Usare questo parametro quando la destinazione ha riscontrato un controllo di bug o un'eccezione. Tuttavia, un'analisi del motivo per cui un'applicazione è bloccata è più rilevante per il problema. In modalità kernel, !analyze -hang analizza i blocchi che il sistema contiene e quindi analizza la catena di code DPC. In modalità utente, !analyze -hang analizza lo stack di thread per determinare se i thread bloccano altri thread.

Prima di eseguire questa estensione in modalità utente, prendere in considerazione la possibilità di modificare il thread corrente nel thread che si ritiene che abbia smesso di rispondere ( ovvero bloccato). È consigliabile eseguire questa modifica perché l'eccezione potrebbe aver modificato il thread corrente in uno diverso.

Mostra parametro

-mostrare BugCheckCode [BugParameters]

Visualizza informazioni sul controllo dei bug specificato da BugCheckCode. BugParameters specifica fino a quattro parametri di controllo dei bug separati da spazi. Questi parametri consentono di perfezionare ulteriormente la ricerca.

Continuare i parametri di esecuzione

-c

Continua l'esecuzione quando il debugger rileva un problema noto. Se il problema non è noto, il debugger rimane suddiviso nella destinazione.

È possibile usare l'opzione -c con i sottoparametri seguenti. Questi sottoparametri configurano l'elenco dei problemi noti. Non causano l'esecuzione da soli. Finché non si esegue !analyze -c-load **** almeno una volta, !analyze -c non ha alcun effetto.

-carico KnownIssuesFile
Carica il file di problemi noti specificato. KnownIssuesFile specifica il percorso e il nome del file. Questo file deve essere in formato XML.

L'elenco dei problemi noti nel KnownIssuesFile file viene usato per tutti i comandi -c successivi fino a quando non si usa -c -unload o fino a quando non si usa -c -load di nuovo (a questo punto i nuovi dati sostituiscono i dati precedenti).

-scaricare

Scarica l'elenco corrente di problemi noti.

-help

Visualizza la Guida per l'estensione dei comandi di estensione !analyze -c nella finestra di comando Debugger.

Parametri dell'opzione di caricamento XML

-XML

Genera l'output di analisi in formato XML.

-xmi

Aggiunge informazioni sul modulo all'output xml. Questa opzione richiede -xml o -xmf.

-xcs

Aggiunge il contesto e i frame dello stack di chiamate all'output xml. Questa opzione richiede -xml o -xmf.

-xmf OutputXmlFile

Scrive l'analisi nell'oggetto specificato OutputXmlFile in formato XML. Il file verrà sovrascritto se esiste già. Non verrà generato alcun output di analisi nella console o nel log, a meno che non venga specificata anche l'opzione -xml.

DLL

ext.dll

Informazioni aggiuntive

Per l'analisi di esempio di un'eccezione in modalità utente e di un errore di arresto in modalità kernel (ovvero arresto anomalo) e per altre informazioni su come !analyze usa il file triage.ini, vedere Uso dell'estensione !analyze.

Osservazioni:

In modalità utente, !analyze visualizza informazioni sull'eccezione corrente.

In modalità kernel, !analyze visualizza informazioni sul controllo dei bug più recente. Se si verifica un controllo dei bug, la visualizzazione !analyze viene generata automaticamente. È possibile usare !analyze -v per visualizzare informazioni aggiuntive. Se si desidera visualizzare solo i parametri di controllo dei bug di base, è possibile usare il comando .bugcheck (visualizzare i dati di controllo dei bug).

Per i driver che usano User-Mode Driver Framework (UMDF) versione 2.15 o successiva, !analyze fornisce informazioni sugli errori del verificatore UMDF e sulle eccezioni non gestite. Questa funzionalità è disponibile quando si esegue il debug in modalità kernel in tempo reale e quando si analizza un file di dump della memoria in modalità utente. Per gli arresti anomali del driver UMDF, !analizza i tentativi di identificare il driver responsabile.

Vedi anche