Debug del codice sorgente in WinDbg (versione classica)

Percorso di origine

Il percorso di origine specifica le directory in cui si trovano i file di origine C e C++. Per altre informazioni sulla visualizzazione del codice sorgente nel debugger, vedere Percorso di origine.

Nota Se si è connessi a una rete aziendale, il modo più efficiente per accedere ai file di origine consiste nell'usare un server di origine. È possibile usare un server di origine usando la stringa srv* all'interno del percorso di origine. Per altre informazioni sui server di origine, vedere Uso di un server di origine.

Per controllare il percorso di origine in WinDbg, eseguire una delle operazioni seguenti:

Apertura e chiusura dei file di origine

Per aprire o chiudere direttamente un file di origine, eseguire una delle operazioni seguenti:

  • Scegliere Apri file sorgente dal menu File oppure premere CTRL+O. È anche possibile usare il pulsante Open source file (Screenshot del pulsante Open Source File in WinDbg).

    Nota Quando si usa il menu o il pulsante della barra degli strumenti per aprire un file di origine, il percorso del file viene aggiunto automaticamente al percorso di origine.

  • Scegliere Chiudi finestra corrente dal menu File .

  • Selezionare il pulsante Chiudi nell'angolo della finestra Origine.

  • Scegliere File recenti dal menu File per aprire uno dei quattro file di origine aperti più di recente in WinDbg.

  • Immettere il comando .open (Open Source File).

  • Immettere il comando lsf (Carica o Scarica file di origine).

In WinDbg la finestra Origine visualizza i file di origine caricati nel debugger.

Apertura della finestra di origine

Il debugger apre una finestra di origine quando carica un nuovo file di origine. Per ripristinare o passare a una finestra open Source, passare al menu Finestra e scegliere dall'elenco di finestre nella parte inferiore del menu.

La schermata seguente mostra un esempio di finestra Origine.

Screenshot della finestra Origine in WinDbg, che visualizza un file di origine caricato.

Ogni file di origine si trova nella propria finestra di origine. Il titolo di ogni finestra di origine è il percorso completo del file di origine.

Uso della finestra di origine

Ogni finestra Origine visualizza il testo di un file di origine. Non è possibile modificare un file di origine nel debugger. Per altre informazioni sulla modifica delle impostazioni del tipo di carattere e della scheda, vedere Modifica delle proprietà del testo.

Ogni finestra Origine include un menu di scelta rapida con comandi aggiuntivi. Per accedere al menu, selezionare e tenere premuto (o fare clic con il pulsante destro del mouse) sulla barra del titolo o selezionare l'icona visualizzata nell'angolo superiore destro della finestra. L'elenco seguente descrive alcuni dei comandi di menu:

  • Impostare il puntatore all'istruzione sulla riga corrente modifica il valore del puntatore dell'istruzione all'istruzione corrispondente alla riga corrente. Questo comando equivale all'uso di Edit | Impostare il comando Istruzione corrente o premere CTRL+MAIUSC+I.

  • Modificare questo file apre il file di origine in un editor di testo. L'editor è determinato dalle informazioni del Registro di sistema dell'editor WinDiff o dal valore della variabile di ambiente WINDBG_INVOKE_EDITOR. Si consideri ad esempio il caso in cui il valore di WINDBG_INVOKE_EDITOR è il seguente.

    c:\my\path\myeditor.exe -file %f -line %l
    

    In questo caso, Myeditor.exe verrà aperto al numero di riga in base uno del file di origine corrente. L'opzione %l indica che i numeri di riga devono essere letti in base uno, mentre %f indica che è necessario utilizzare il file di origine corrente. Altre possibilità di sostituzione includono %L, che indica che i numeri di riga sono in base zero e %p, che possono anche indicare che il file di origine corrente deve essere utilizzato.

  • Valuta la selezione valuta il testo attualmente selezionato usando l'analizzatore di espressioni C++. Il risultato viene visualizzato nella finestra Del comando del debugger. Se il testo selezionato include più righe, viene restituito un errore di sintassi. Questo comando equivale all'uso di Edit | Comando Valuta selezione , premendo CTRL+MAIUSC+V o usando ?? (Evaluate C++ Expression) comando con il testo selezionato come argomento.

  • Visualizza il tipo selezionato visualizza il tipo di dati dell'oggetto selezionato. Questa visualizzazione viene visualizzata nella finestra Comando debugger. Se il testo selezionato include più di un singolo oggetto, potrebbe essere visualizzato un errore di sintassi o altri risultati irregolari. Questo comando equivale all'uso di Edit | Visualizzare il comando Tipo selezionato o premere CTRL+MAIUSC+Y.

  • Aprire la finestra memoria per la selezione apre una nuova finestra Memoria ancorata che visualizza la memoria a partire dall'indirizzo dell'espressione selezionata.

  • Aggiungi selezione alla finestra Espressione di controllo aggiunge il token di origine selezionato alla finestra Espressione di controllo.

  • Disassemble in corrispondenza della riga corrente fa sì che l'istruzione corrispondente alla riga corrente venga visualizzata nella finestra Disassembly. La riga selezionata è evidenziata nella finestra Origine e nella finestra Disassembly, ma questo comando influisce solo sulla visualizzazione, ovvero il puntatore all'istruzione non viene modificato. Se la finestra Disassembly viene chiusa quando questo comando è selezionato, viene aperto.

  • Selezionare il linguaggio di origine visualizza un elenco di linguaggi di programmazione. Selezionare il linguaggio di programmazione usato per generare il file di origine e quindi selezionare OK per abilitare l'evidenziazione della sintassi di base per la finestra Origine corrente. Selezionare <Nessuno per disabilitare> l'evidenziazione della sintassi per la finestra Origine corrente.

Colori della finestra di origine e valutazione al passaggio del mouse

Se il debugger riconosce l'estensione del nome file di origine, nella finestra Origine vengono visualizzati determinati elementi della sintassi a colori. Per disattivare o modificare i colori, eseguire le operazioni seguenti:

  • Per disattivare i colori della sintassi in una singola finestra, aprire il menu di scelta rapida della finestra Origine, selezionare Seleziona lingua di origine e quindi selezionare<> Nessuno.

  • Per disattivare i colori della sintassi per tutte le finestre origine, scegliere Opzioni dal menu Visualizza . Deselezionare quindi la casella di controllo Analizza lingue di origine .

  • Per modificare i colori della sintassi, scegliere Opzioni dal menu Visualizza . Nell'area Colori selezionare quindi un elemento della sintassi e selezionare il pulsante Cambia per modificare il colore.

  • Il metodo di analisi utilizzato per l'evidenziazione è determinato dal linguaggio di programmazione associato all'estensione di file per il file di origine. Per modificare il linguaggio di programmazione associato a un'estensione di file specifica, usare la finestra di dialogo Estensioni file per i linguaggi di origine. Per aprire questa finestra di dialogo, scegliere Estensioni di file del linguaggio di origine dal menu Visualizza .

La riga che rappresenta il contatore del programma corrente è evidenziata. Vengono evidenziate anche le righe in corrispondenza delle quali vengono impostati punti di interruzione.

Se si seleziona una finestra Di origine e quindi si usa il mouse per passare il puntatore del mouse su un simbolo in tale finestra, il simbolo verrà valutato. La valutazione è uguale a quella prodotta dal comando dt (Tipo di visualizzazione). Per disattivare questa valutazione, scegliere Opzioni dal menu Visualizza . Deselezionare quindi la casella di controllo Valuta al passaggio del mouse .

Vedi anche

Per altre informazioni sul debug dell'origine e sui comandi correlati, vedere Debug in modalità origine.