Compartilhar via


Tratamento de exceções (depuração)

Uma exceção é uma situação anormal que ocorre enquanto um programa está em execução. Geralmente, exceções são indicações de problemas que você precisa depurar. Quando uma exceção ocorre, o depurador grava uma mensagem de exceção na janela Saída, a menos que ela esteja desativada na caixa de diálogo Caixa de diálogo Geral, Depuração, Opções.

O depurador pode ou não interromper a execução quando a exceção ocorrer.

  • Se uma exceção que não seja ASP.NET ocorrer e não for tratada, o depurador sempre interromperá a execução.

  • Você pode instruir o depurador a interromper a execução imediatamente quando uma exceção for lançada, antes que qualquer manipulador seja invocado. Para obter mais informações, consulte Como interromper quando uma exceção é lançada.

  • Se você estiver depurando com Apenas Meu Código, terá uma terceira opção. Você poderá instruir o depurador a interromper qualquer exceção que não for tratada por um manipulador no código do usuário (“Meu Código”). Para obter mais informações, consulte Como interromper exceções sem tratamento do usuário.

  • O ASP.NET tem um manipulador de exceção de nível superior que trata exceções para exibir páginas de erro para usuários do navegador. Esse manipulador de exceção de nível superior impedirá uma exceção sem tratamento de interromper o depurador, a menos que Apenas Meu Código esteja ativado. Verifique se você habilitou o Apenas Meu Código para a depuração do ASP.NET.

    Lembre-se, se uma exceção ocorrer e não for tratada, o depurador sempre interromperá a execução. A configuração não tratada de usuário não altera isso.

O depurador do Visual Studio reconhece as seguintes categorias de exceções:

  • Exceções C++

  • Exceções Common Language Runtime

  • Assistentes de depuração gerenciados

  • Verificações em tempo de execução nativas

  • Exceções Win32

  • Exceções em tempo de execução do JavaScript

  • Exceções de acesso à memória GPU

A maioria das exceções tem manipuladores projetados para responder a uma exceção quando ela ocorrer. Isso fornece ao programa uma oportunidade de se recuperar de uma situação anormal. As verificações em tempo de execução nativas não têm manipuladores.

Em um aplicativo do Visual Basic, o depurador representa todos os erros como exceções, mesmo se você usar manipuladores de erro de estilo On Error.

Para Visual Basic e C#, o depurador agora possui um novo Assistente de Exceção que fornece mais informações quando ocorre uma exceção.

Os tópicos a seguir fornecem informações sobre como tratar exceções:

Consulte também

Conceitos

Segurança do depurador

Outros recursos

Assistente de Exceção

Mapa de depurador

<PAVEOVER> Como intervir apenas no meu código