Evento My.Application.UnhandledException

Ocorre quando o aplicativo encontra uma exceção não tratada.

' Usage
Public Sub Me_UnhandledException( _
   ByVal sender As Object, _
   ByVal e As UnhandledExceptionEventArgs _
) Handles Me.UnhandledException
End Sub
' Declaration
Public Event UnhandledException( _
   ByVal sender As Object, _
   ByVal e As UnhandledExceptionEventArgs _
)

Parâmetros

  • sender
    O Object o que elevou o evento.

  • e
    Um objeto UnhandledExceptionEventArgs que contém a exceção sem-tratamento e informações adicionais.

Comentários

O aplicativo gera o evento UnhandledException se ele encontrar uma exceção não tratada.Este evento é parte do modelo de aplicativos Visual Basic.Para obter mais informações, consulte Visão Geral Sobre o Modelo do Aplicativo Visual Basic.

Você pode usar a propriedade Exception do parâmetro e para acessar a exceção sem-tratamento que causou este evento.

Você pode usar a propriedade ExitApplication do parâmetro e para controlar se o aplicativo será encerrado.Por padrão, ExitApplication é True, portanto, o aplicativo é encerrado depois de concluir o manipulador de eventos UnhandledException.Você pode definir o valor para False no manipulador de eventos UnhandledException para manter o aplicativo em execução e fazê-lo retornar a um estado de espera.

O código para o manipulador UnhandledException de eventos é armazenado no arquivo ApplicationEvents.vb, que está oculta por padrão.

Para acessar a janela do Editor de Códigos para eventos de aplicativo:

  1. Com um projeto selecionado no Solution Explorer, clique em Propriedades no menu Projeto.

  2. Clique na guia Application.

  3. Clique no botão View Application Events para abrir o Editor de Código.

Para obter mais informações, consulte Como: Manipular eventos de aplicativo (Visual Basic).

Observação:

O compilador do Visual Basic impede que os aplicativos que são criados para depuração de gerar este evento, para permitir que um depurador manipule as exceções não tratadas.Isso significa que, se você estiver testando o seu aplicativo executando-o sob o depurador do Visual Studio Integrated Development ambiente, seu UnhandledException não será chamada de manipulador de eventos. Para obter mais informações sobre a criação de aplicativos para depuração, consulte /depurar (Visual Basic).

Tarefas

A tabela seguinte lista exemplos de tarefas envolvendo o objeto My.Application.UnhandledException.

Para

Consulte

Utilize os eventos fornecidos pelo modelo de aplicativo do Visual Basic para executar o código

Como: Executar código quando o aplicativo inicia ou termina

Log de execções não tratadas

Como: Log Exceptions in Visual Basic

Exemplo

Este exemplo usa o evento My.Application.UnhandledException para registrar qualquer exceção não tratada.

Private Sub MyApplication_UnhandledException( _
    ByVal sender As Object, _
    ByVal e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs _
) Handles Me.UnhandledException
    My.Application.Log.WriteException(e.Exception, _
        TraceEventType.Critical, _
        "Unhandled Exception.")
End Sub

Você deve inserir o código na janela Editor de Códigos para eventos do aplicativo.Para acessar essa janela, siga o procedimento encontrado na seção Comentários deste tópico.Para obter mais informações, consulte Como: Manipular eventos de aplicativo (Visual Basic).

Como o evento UnhandledException não é gerado quando um depurador é anexado ao aplicativo, você precisa executar esse exemplo fora do ambiente de desenvolvimento integrado Visual Studio.

Requisitos

Namespace:Microsoft.VisualBasic.ApplicationServices

Classe:WindowsFormsApplicationBase

Assembly: Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Disponibilidade por Tipo de Projeto

Tipo de Projeto

Disponível

Aplicativo do Windows

Sim

Biblioteca de Classe

Não

Aplicativo de Console

Não

Biblioteca de Controle do Windows

Não

Biblioteca de Controle da Web

Não

Serviço do Windows

Não

Site

Não

Permissões

As seguintes permissões podem ser necessárias:

Permissão

Descrição

SecurityPermission

Controla a capacidade para adicionar um manipulador de eventos para este evento.Enumeração associada: SecurityPermissionFlag.ControlAppDomain.

Para obter mais informações, consulte Segurança de Acesso de código e Solicitando permissões.

Consulte também

Conceitos

Visão Geral Sobre o Modelo do Aplicativo Visual Basic

Referência

Objeto My.Application

Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs

Date

History

Motivo

Julho de 2008

Revisada informações sobre como definir o UnhandledExceptionmanipulador de eventos na seção "Comentários".

Correção de bug do conteúdo.