Condividi tramite


Gestione delle eccezioni (debug)

Le informazioni contenute in questo argomento sono valide per:

Edizione

Visual Basic

C#

F#

C++

Web Developer

Express

Argomento applicabile Argomento applicabile Argomento applicabile Argomento applicabile Argomento applicabile

Pro, Premium e Ultimate

Argomento applicabile Argomento applicabile Argomento applicabile Argomento applicabile Argomento applicabile

Un'eccezione è una situazione anomala che ha luogo durante l'esecuzione di un programma. Le eccezioni sono spesso indicatori della presenza di problemi che è necessario identificare e correggere mediante il debug. Quando si verifica un'eccezione, il debugger visualizza un messaggio di eccezione nella finestra di Output, a meno che questa funzionalità non sia stata disabilitata nella finestra di dialogo Generale, Debug, finestra di dialogo Opzioni.

Quando si verifica l'eccezione, l'esecuzione viene interrotta o meno dal debugger a seconda dei casi.

  • Se si verifica un'eccezione non ASP.NET non gestita, l'esecuzione viene sempre interrotta.

  • È possibile impostare il debugger in modo da interrompere l'esecuzione immediatamente quando viene generata un'eccezione, prima che venga richiamato qualsiasi gestore. Per ulteriori informazioni, vedere Procedura: interrompere l'esecuzione in caso di eccezione.

  • Se si esegue il debug come illustrato in Procedura: eseguire l'istruzione Just My Code, esiste una terza possibilità. È possibile impostare il debugger in modo da interrompere l'esecuzione ogni volta che viene generata un'eccezione non gestita da un gestore nel codice utente ("My Code"). Per ulteriori informazioni, vedere Procedura: interrompere l'esecuzione in caso di eccezioni non gestite dall'utente.

  • In ASP.NET è disponibile un gestore eccezioni di livello superiore che gestisce le eccezioni in modo da visualizzare pagine di errore agli utenti del browser. Se non è attivata l'opzione Just My Code, questo gestore impedisce il passaggio al debugger di un'eccezione non gestita. Assicurarsi di attivare l'opzione Just My Code per il debug ASP.NET.

    Tenere presente che, se si verifica un'eccezione non gestita, il debugger interrompe sempre l'esecuzione. L'impostazione Non gestita dall'utente non cambia questo comportamento.

Nel debugger di Visual Studio vengono riconosciute le seguenti categorie di eccezioni:

  • Eccezioni C++

  • Eccezioni Common Language Runtime

  • Assistenti al debug gestiti

  • Controlli runtime nativi

  • Eccezioni Win32

Per la maggior parte delle eccezioni è disponibile un gestore progettato per rispondere all'eccezione quando si verifica, operazione che costituisce un'opportunità di correggere la situazione anormale del programma. Per i controlli runtime nativi non sono disponibili gestori.

In un'applicazione Visual Basic tutti gli errori vengono rappresentati nel debugger come eccezioni, anche se si utilizzano gestori errori di tipo On Error.

Per Visual Basic e C# è disponibile nel debugger una nuova funzionalità denominata Informazioni sulle eccezioni, che consente di ottenere maggiori informazioni quando si verifica un'eccezione.

Negli argomenti riportati di seguito vengono fornite informazioni sulla gestione delle eccezioni:

Vedere anche

Attività

Procedura: eseguire l'istruzione Just My Code

Concetti

Sicurezza del debugger

Altre risorse

Informazioni sulle eccezioni

Guida di orientamento al debugger