Domande frequenti - Ricerca delle funzionalità del debugger

Questa documentazione contiene domande frequenti sulle funzionalità di debug in Visual Studio. Esegue anche il mapping delle attività di debug o dei problemi alla funzionalità pertinente nel debugger di Visual Studio. Questi collegamenti riguardano attività o problemi come il debug di applicazioni multithreading, lo spostamento del codice, la perdita di memoria, l'ispezione delle variabili, l'uso di punti di interruzione, il debug del codice esterno e molti altri. Se è necessaria una panoramica delle funzionalità del debugger, vedere Esaminare prima di tutto il debugger.

Interruzione

Spostarsi nel codice

  • Come è possibile apprendere i comandi per scorrere il codice durante il debug?

    Per altre informazioni, vedere Esplorare il codice con il debugger.

  • è possibile eseguire il codice in una determinata riga ignorando i punti di interruzione senza rimuoverli o disabilitarli?

    È possibile usare "Forza esecuzione in cursore" per questi scenari. È possibile mantenere i punti di interruzione e il debugger li ignora finché non raggiunge la riga di codice con il cursore. Ignora anche qualsiasi condizione di interruzione delle eccezioni di prima probabilità che possono verificarsi. Per altre informazioni, vedere Esplorare il codice con il debugger.

  • Se la riga di codice contiene chiamate a metodi diversi, è possibile eseguire un'istruzione in un metodo specifico?

    Fare clic con il pulsante destro del mouse sulla riga di codice per visualizzare un menu di scelta rapida che consente di selezionare "Esegui istruzione specifica". Verrà visualizzato un elenco di tutti i metodi che è possibile eseguire. È ora possibile selezionare il metodo di interesse.

Esaminare e visualizzare i dati

  • Come è possibile controllare il valore delle variabili durante l'esecuzione dell'app?

    Passare il puntatore del mouse sulle variabili usando suggerimenti per i dati o controllare le variabili nella finestra Auto e Variabili locali.

  • è possibile osservare il valore di modifica di una variabile specifica?

    Impostare un'espressione di controllo sulla variabile. Per altre informazioni, vedere Impostare un'espressione di controllo sulle variabili.

  • Come è possibile visualizzare stringhe troppo lunghe per la finestra del debugger?

    Il visualizzatore di stringhe mostra stringhe troppo lunghe per una descrizione dati o una finestra del debugger. Può anche aiutare a identificare stringhe in formato non valido.
    Il visualizzatore di stringhe predefinito in Visual Studio include opzioni Text, XML, HTML e JSON.

  • Come è possibile visualizzare oggetti raccolta di grandi dimensioni?

    Il visualizzatore DataSet consente di visualizzare il contenuto di un oggetto DataSet, DataTable, DataView o DataViewManager. Il visualizzatore IEnumerable consente di visualizzare oggetti come matrici, elenco e così via. Per altre informazioni, vedere visualizzatori tabulari.

Eseguire il debug di un'app già in esecuzione

  • Come è possibile eseguire il debug di app in computer locali o remoti, eseguire il debug di più processi contemporaneamente, eseguire il debug di app non create in Visual Studio o eseguire il debug di un'app non avviata da Visual Studio?

    Vedere Collega a un processo in esecuzione.

  • Come è possibile collegarsi ripetutamente alla stessa applicazione?

    È possibile usare Ricollegamento per elaborare (MAIUSC+ALT+P) per consentire di avviare facilmente il debug dell'applicazione in un solo clic senza dover passare ogni volta attraverso la finestra di dialogo Collega a processo. Vedere Ricollegamento a un processo

Eseguire il debug di applicazioni multithreading

Analizzare la memoria

  • L'applicazione ha una perdita di memoria?

    Creare uno snapshot e aprirlo con lo strumento di memoria per risolvere altri problemi. Vedere Misurare l'utilizzo della memoria.

  • Come è possibile analizzare l'utilizzo della memoria per applicazioni native o gestite?

    Usare lo strumento di memoria di Visual Studio tramite debug in tempo reale, dump dell'heap o profiler delle prestazioni.
    Vedere Scegliere uno strumento di analisi della memoria.

  • Come è possibile analizzare l'utilizzo della memoria per applicazioni native o gestite senza collegare un debugger? Usare il profiler prestazioni di Visual Studio con lo strumento di utilizzo della memoria abilitato.
    Vedere Analizzare l'utilizzo della memoria.

  • è possibile confrontare l'utilizzo della memoria tra due punti nel tempo?

    Confrontare gli snapshot nello strumento di memoria o confrontare due dump dell'heap usando la funzionalità diff. Vedere Analizzare l'utilizzo della memoria.

Debug di codice esterno

  • È possibile visualizzare solo il codice utente durante il debug?

    Just My Code è una funzionalità di debug di Visual Studio che esegue automaticamente passaggi sulle chiamate a sistema, framework e altro codice non utente. Nella finestra Stack di chiamate Just My Code comprime queste chiamate in frame [Codice esterno]. Vedere Eseguire il debug solo del codice utente con just my code

  • Come è possibile visualizzare o eseguire il debug delle istruzioni di assembly non elaborate eseguite dal programma?

    Usare la finestra disassembly da Debug > Windows > Disassembly. È possibile eseguire un'istruzione alla volta e persino impostare punti di interruzione su singole istruzioni di assembly.

  • è possibile visualizzare il codice sorgente per le librerie .NET?

    Abilitare i server di simboli Microsoft da Opzioni > debug > simboli per scaricare simboli e origine per le librerie .NET. Vedere Specificare il simbolo

  • Come è possibile caricare i PDB da un percorso o un server specifico o condiviso?

    Configurare i server di simboli da Opzioni > debug > simboli. Vedere Specificare il simbolo

  • Come non è mai possibile caricare un PDB specifico? In alternativa, come posso caricarne sempre uno?

    Configurare gli elenchi di inclusione ed esclusione nelle opzioni di debug >> simboli.
    Vedere Specificare il simbolo

Configurare il debug

  • Come si configurano le impostazioni del debugger?

    Per configurare le opzioni del debugger e le impostazioni del progetto del debugger, vedere Impostazioni del debugger e preparazione.

  • Come è possibile personalizzare le informazioni visualizzate nel debugger?

    È possibile visualizzare informazioni diverse dal tipo di oggetto come valore in diverse finestre del debugger. Per il codice C#, Visual Basic, F# e C++/CLI, usare l'attributo DebuggerDisplay. Per opzioni più avanzate, è anche possibile personalizzare l'interfaccia utente creando un visualizzatore personalizzato . Per C++ nativo, usare il framework NatVis .

Attività aggiuntive

  • È necessario salvare un dump?

    Durante il debug viene arrestato in corrispondenza di un errore o di un punto di interruzione, selezionare Debug > Salva dump con nome. Vedere File dump

  • Come si analizza un file di dump?

    Aprire il dump scegliendo File > Apri in Visual Studio. Per avviare il debug, selezionare Debug con solo gestito, Debug con solo nativo, Debug con mixedo debug condi memoria gestita. Vedere File dump

  • è possibile modificare il codice durante una sessione di debug?

    Usare Modifica e continuare. Per XAML, usare ricaricamento rapido XAML.

  • Come è possibile eseguire il debug nei computer remoti?

    Vedere debug remoto.

  • Come è possibile risolvere i problemi di prestazioni?

    Vedere Esaminare prima gli strumenti di profilatura

  • Come risolvere un'eccezione?

    Vedere Correggere un'eccezione.