Procedura: utilizzare la finestra Stack di chiamate
Tramite la finestra Stack di chiamate è possibile visualizzare le chiamate di funzione o di routine attualmente presenti nello stack.
Nella finestra Stack di chiamate vengono visualizzati il nome di ogni funzione e il linguaggio di programmazione nel quale è scritta. Il nome della funzione o della procedura può essere seguito da informazioni facoltative quali il nome del modulo, il numero di riga, oltre a nomi, tipi e valori di parametri. La visualizzazione di queste informazioni opzionali può essere attivata o disattivata.
Lo stack frame in cui è attualmente posizionato il puntatore di esecuzione è contraddistinto da una freccia gialla. Per impostazione predefinita, si tratta del frame le cui informazioni vengono visualizzate nella finestra di origine, nonché nelle finestre Disassembly, Variabili locali, Espressioni di controllo e Auto. Se lo si desidera, è possibile modificare il contesto specificando un altro frame dello stack nella finestra Stack di chiamate.
Quando i simboli per il debug non sono disponibili per una parte di uno stack di chiamate, è possibile che nella finestra Stack di chiamate non vengano visualizzate informazioni corrette per tale parte. Verrà visualizzata la notazione seguente:
[I frame indicati di seguito possono essere errati e/o mancanti, non sono stati caricati simboli per nome.dll]
Nel codice gestito, per impostazione predefinita la finestra Stack di chiamate nasconde informazioni per codice non utente. Di seguito è riportata la notazione visualizzata in sostituzione delle informazioni nascoste:
[<External Code>]
Per codice non utente si intende qualsiasi codice diverso da "My Code". Per visualizzare le informazioni sullo stack di chiamate per il codice non utente, utilizzare il menu di scelta rapida.
Utilizzando il menu di scelta rapida, è possibile scegliere se visualizzare o meno le chiamate tra thread.
Nota
Le finestre di dialogo e i comandi di menu visualizzati potrebbero non corrispondere a quelli descritti nella Guida in quanto dipendono dall'edizione o dalle impostazioni in uso.Per modificare le impostazioni, selezionare Importa/Esporta impostazioni nel menu Strumenti.Per ulteriori informazioni, vedere Personalizzazione delle impostazioni di sviluppo in Visual Studio.
Per visualizzare la finestra Stack di chiamate in modalità di interruzione o di esecuzione
- Selezionare Finestre dal menu Debug, quindi fare clic su Stack di chiamate.
Per scegliere quali informazioni opzionali visualizzare
- Fare clic con il pulsante destro del mouse sulla finestra Stack di chiamate e impostare o deselezionare Mostra <the information that you want>.
Per visualizzare i frame del codice non utente nella finestra Stack di chiamate
- Fare clic con il pulsante destro del mouse sulla finestra Stack di chiamate e selezionare Mostra codice esterno.
Per passare a un altro stack frame
Nella finestra Stack di chiamate fare clic con il pulsante destro del mouse sul frame di cui si desidera visualizzare codice e dati.
Selezionare Passa al frame.
Accanto al frame selezionato verrà visualizzata una freccia verde ricurva. Il puntatore di esecuzione rimarrà nel frame originale, sempre contrassegnato dalla freccia gialla. Se si sceglie Esegui o Continua dal menu Debug, l'esecuzione continuerà nel frame originale, non nel frame selezionato.
Per visualizzare le chiamate da o verso altri thread
- Fare clic con il pulsante destro del mouse sulla finestra Stack di chiamate e selezionare Includi chiamate da e verso altri thread.
Per visualizzare il codice sorgente di una funzione dello stack di chiamate
- Nella finestra Stack di chiamate fare clic con il pulsante destro del mouse sulla funzione della quale si desidera esaminare il codice sorgente e selezionare Vai a codice sorgente.
Per rilevare visivamente lo stack di chiamate
Nella finestra Stack di chiamate aprire il menu di scelta rapida. Scegliere Mostra stack di chiamate sulla mappa codici. (Tastiera: CTRL + MAIUSC + `)
Vedere Mappare i metodi sullo stack di chiamate durante il debug in Visual Studio.
Per visualizzare il codice disassembly di una funzione dello stack di chiamate
- Nella finestra Stack di chiamate fare clic con il pulsante destro del mouse sulla funzione della quale si desidera esaminare il codice del disassembly e selezionare Vai a disassembly.
Per eseguire una funzione specifica dalla finestra Stack di chiamate
Per impostare un punto di interruzione in corrispondenza del punto di uscita di una chiamata di funzione
Per caricare i simboli per un modulo
- Nella finestra Stack di chiamate fare clic con il pulsante destro del mouse sul frame in cui viene visualizzato il modulo contenente i simboli che si desidera ricaricare e selezionare Carica simboli.
Caricamento dei simboli
Nella finestra Stack di chiamate è possibile caricare i simboli di debug per un codice che non ne dispone. Questi simboli possono essere simboli di sistema o .NET Framework scaricati dai server dei simboli pubblici Microsoft o simboli contenuti in un percorso nel computer del quale si esegue il debug.
Vedere Specifica di file di simboli con estensione pdb) e di file di origine nel debugger di Visual Studio
Per caricare i simboli
Nella finestra Stack di chiamate fare clic con il pulsante destro del mouse sul frame per il quale non sono caricati i simboli. Il frame verrà disattivato (rappresentato in grigio).
Scegliere Carica simboli da, quindi fare clic su Server dei simboli Microsoft o Percorso simboli.
Per impostare il percorso dei simboli
Nella finestra Stack di chiamate scegliere Impostazioni simboli nel menu di scelta rapida.
Viene visualizzata la finestra di dialogo Opzioni con la pagina Simboli.
Fare clic su Impostazioni simboli.
Nella finestra di dialogo Opzioni fare clic sull'icona della cartella.
Viene visualizzato un cursore nella casella Percorsi dei file di simboli (pdb).
Digitare il percorso di directory del simbolo sul computer del quale si esegue il debug. Per il debug locale, è il computer locale. Per il debug remoto, è il computer remoto.
Scegliere OK per chiudere la finestra di dialogo Opzioni.
Vedere anche
Riferimenti
Procedura: modificare il formato numerico delle finestre del debugger
Concetti
Codice misto e informazioni mancanti nella finestra Stack di chiamate
Visualizzazione di dati nel debugger
Altre risorse
Specifica di file di simboli con estensione pdb) e di file di origine nel debugger di Visual Studio