Debug del codice gestito

 

Per la documentazione più recente di Visual Studio 2017 RC, vedere Documentazione di Visual Studio 2017 RC.

In questa sezione vengono descritti alcuni problemi di debug comuni e vengono illustrate varie tecniche per le applicazioni gestite, ovvero scritte in linguaggi compatibili con Common Language Runtime, ad esempio Visual Basic, C# e C++. Le tecniche descritte sono di livello avanzato. Per ulteriori informazioni, vedere Utilizzo del debugger.

Messaggi diagnostici nella finestra di output
Vengono descritte le classi Debug e Trace, con le quali è possibile scrivere messaggi di runtime nella finestra di Output. Queste classi includono metodi di output che supportano l'output di informazioni senza interruzione dell'esecuzione e l'output di informazioni con interruzione dell'esecuzione se non viene rispettata una condizione specificata.

Asserzioni nel codice gestito
Vengono descritte le asserzioni nel codice gestito, che verificano le condizioni specificate come argomenti per i metodi Assert. In questo argomento vengono anche forniti il codice di esempio, le informazioni sull'utilizzo dei metodi Debug e Trace, le considerazioni sulle versioni di debug e di rilascio del codice, gli effetti secondari, gli argomenti assert, la personalizzazione del comportamento assert e i file di configurazione.

Istruzioni Stop in Visual Basic
Viene descritta l'istruzione Stop, che fornisce un'alternativa all'impostazione di un punto di interruzione. Sono inoltre disponibili esempi di codice e un confronto tra le istruzioni Stop ed End e tra le istruzioni Stop e Assert.

Procedura dettagliata: debug di un Windows Form
Vengono date istruzioni dettagliate per la creazione di un Windows Form e per il debug di tale form. Un Windows Form, un componente standard di un'applicazione Windows gestita, è una delle applicazioni gestite più comuni. In questa procedura dettagliata vengono utilizzati Visual C# e Visual Basic, ma le tecniche per la creazione di un Windows Form con C++ sono simili.

Debug del metodo OnStart
Vengono forniti codici di esempio per consentire il debug del metodo OnStart di un servizio Windows gestito. Per eseguire il debug del metodo OnStart di un servizio Windows, è necessario aggiungere alcune righe di codice per simulare il servizio.

Debug in modalità mista
Viene descritto il debug di applicazioni in modalità mista, ovvero qualsiasi applicazione nella quale vengono combinati codice nativo e codice gestito.

Errore: impossibile eseguire il debug perché nel sistema è attivato un debugger del kernel
Viene descritto un messaggio di errore visualizzato se si tenta di eseguire il debug del codice gestito in un sistema Windows 7, Windows Vista, Windows XP, Windows 2000 o Windows NT avviato in modalità debug.

Debug e ottimizzazione JIT
Vengono descritti gli effetti dell'ottimizzazione JIT sul debug.

Debug LINQ e DLINQ
Vengono illustrate le tecniche per il debug di query LINQ.

Procedura dettagliata: debug di un'applicazione parallela
Viene descritto come utilizzare le finestre degli strumenti Attività in parallelo e Stack in parallelo per eseguire il debug di un'applicazione parallela.

Utilizzo di IntelliTrace
Individuare i bug in modo più rapido e semplice registrando la cronologia di esecuzione dell'app con IntelliTrace. Eseguire all'indietro e in avanti gli eventi registrati e le chiamate per esaminare lo stato dell'app in determinati momenti. Eseguire il debug del codice senza impostare molti punti di interruzione o riavviare l'app con frequenza. Richiede Visual Studio Ultimate.

Traccia e strumentazione di applicazioni
Vengono descritte la traccia, che consente di monitorare l'esecuzione dell'applicazione, e la strumentazione, che prevede l'inserimento di istruzioni di traccia in corrispondenza di posizioni strategiche nel codice. In questo argomento vengono anche forniti collegamenti a un'introduzione all'instrumentazione e alla traccia, opzioni di traccia, listener di traccia, traccia del codice in un'applicazione, aggiunta di istruzioni di traccia al codice dell'applicazione e compilazione in modo condizionale con Debug e Trace.

/ASSEMBLYDEBUG
Viene descritta un'opzione del linker che aggiunge DebuggableAttribute al codice scritto con C++. Questo attributo è necessario per l'utilizzo di funzioni di debug, quali la connessione con C++.

Esecuzione del debug delle applicazioni di servizio Windows
Vengono fornite considerazioni per il debug di applicazioni di servizio Windows, quali: impostazione, connessione al processo, debug del codice nel metodo OnStart del servizio e il codice nel metodo Main, impostazione di punti di interruzione e utilizzo di Services Control Manager per avviare, interrompere, arrestare e continuare il servizio.

Esecuzione del debug e creazione del profilo delle applicazioni
Viene discusso il debug di applicazioni .NET Framework e i requisiti di configurazione.

Debug di script e applicazioni Web
Vengono presentati le tecniche di debug e i problemi più comuni riscontrabili durante il debug di script e applicazioni Web.

Novità relative al debugger di Visual Studio 2015
Vengono descritte le nuove funzionalità di debug integrate in questa versione di Visual Studio.

Debug - Home page
Vengono forniti collegamenti a sezioni più ampie della documentazione sul debug. Le informazioni fornite comprendono: novità del debugger, impostazioni e preparazione, punti di interruzione, gestione delle eccezioni, modifica e continuazione, debug di codice gestito, debug di progetti Visual C++, debug di COM e ActiveX, debug di DLL, debug di SQL e riferimenti per l'interfaccia utente.

Procedura dettagliata: debug di controlli di Windows Form personalizzati in fase di progettazione
Sicurezza del debugger
Debug in Visual Studio

Mostra: