My.Application.UnhandledException (Evento)

Actualización: Julio de 2008

Aparece cuando la aplicación encuentra una excepción no controlada.

' 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
    El Object que provocó el evento.

  • e
    Un objeto UnhandledExceptionEventArgs que contiene la excepción no controlada y la información adicional.

Comentarios

Una aplicación provoca el evento UnhandledException cuando encuentra una excepción no controlada. Este evento forma parte del modelo de aplicaciones de Visual Basic. Para obtener más información, vea Información general sobre el modelo de aplicaciones de Visual Basic.

Puede utilizar la propiedad Exception del parámetro e para tener acceso a la excepción no controlada que produjo este evento.

Puede utilizar la propiedad ExitApplication del parámetro e para controlar si sale la aplicación. De manera predeterminada, ExitApplication es True, por lo que la aplicación sale después de finalizar el controlador de eventos UnhandledException. Puede establecer el valor en False del evento UnhandledException para mantener la aplicación en ejecución y hacerla volver a un estado de espera.

El código de este controlador de eventos UnhandledException se almacena en el archivo ApplicationEvents.vb, que está oculto de manera predeterminada.

Para tener acceso a la ventana del Editor de código para los eventos de aplicación:

  1. Con un proyecto seleccionado en el Explorador de soluciones, en el menú Proyecto haga clic en Propiedades.

  2. Haga clic en la ficha Aplicación.

  3. Haga clic en el botón Ver eventos de aplicaciones para abrir el Editor de código.

Para obtener más información, vea Cómo: Controlar eventos de aplicaciones (Visual Basic).

Nota:

El compilador de Visual Basic impide que las aplicaciones generadas para depuración provoquen este evento, con el fin de permitir que el depurador controle las excepciones no controladas. Esto significa que, si está probando su aplicación ejecutándola en el depurador del entorno de desarrollo integrado (IDE) de Visual Studio, no se llamará a su controlador de eventos UnhandledException. Para obtener más información sobre cómo generar aplicaciones para depuración, vea /debug (Visual Basic).

Tareas

La tabla siguiente muestra ejemplos de tareas que implican al evento My.Application.UnhandledException.

Para

Vea

Utilizar los eventos proporcionados por el Modelo de aplicaciones de Visual Basic para ejecutar código

Cómo: Ejecutar código cuando se inicia o se cierra la aplicación

Registrar las excepciones no controladas

Cómo: Registrar excepciones en Visual Basic

Ejemplo

Este ejemplo utiliza el evento My.Application.UnhandledException para registrar cualquier excepción no controlada.

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

Debe escribir el código en la ventana del Editor de código para los eventos de aplicaciones. Para tener acceso a esta ventana, siga las instrucciones de la sección Comentarios de este tema. Para obtener más información, vea Cómo: Controlar eventos de aplicaciones (Visual Basic).

Puesto que el evento UnhandledException no se produce cuando se asocia un depurador a la aplicación, es necesario ejecutar este ejemplo fuera del Entorno de desarrollo integrado (IDE) de Visual Studio.

Requisitos

Espacio de nombres:Microsoft.VisualBasic.ApplicationServices

Clase:WindowsFormsApplicationBase

Ensamblado: biblioteca en tiempo de ejecución de Visual Basic (en Microsoft.VisualBasic.dll)

Disponibilidad por tipo de proyecto

Tipo de proyecto

Disponible

Aplicación para Windows

Biblioteca de clases

No

Aplicación de consola

No

Biblioteca de controles de Windows

No

Biblioteca de controles Web

No

Servicio de Windows

No

Sitio Web

No

Permisos

Los permisos siguientes pueden ser necesarios:

Permiso

Descripción

SecurityPermission

Controla la capacidad de agregar un controlador de eventos para este evento. Enumeración asociada: SecurityPermissionFlag.ControlAppDomain.

Para obtener más información, vea Seguridad de acceso a código y Solicitar permisos.

Vea también

Conceptos

Información general sobre el modelo de aplicaciones de Visual Basic

Referencia

My.Application (Objeto)

Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs

Historial de cambios

Fecha

Historial

Motivo

Julio de 2008

Información revisada sobre cómo establecer el controlador de eventos UnhandledException en la sección "Comentarios".

Corrección de errores de contenido.