Compartir a través de


Cómo: Registrar excepciones en Visual Basic

Puede usar los My.Application.Log objetos y My.Log para registrar información sobre las excepciones que se producen en la aplicación. Estos ejemplos muestran cómo usar el My.Application.Log.WriteException método para registrar excepciones que detecta explícitamente y excepciones que no se controlan.

Para registrar información de seguimiento, use el My.Application.Log.WriteEntry método . Para obtener más información, consulte: WriteEntry

Para registrar una excepción controlada

  1. Cree el método que generará la información de excepción.

    Public Sub ExceptionLogTest(ByVal fileName As String)
    End Sub
    
  2. Use un Try...Catch bloque para detectar la excepción.

    Try
    Catch ex As Exception
    End Try
    
  3. Coloque el código que podría generar una excepción en el Try bloque .

    Quite la marca de comentario de las líneas Dim y MsgBox para generar una excepción NullReferenceException.

    ' Code that might generate an exception goes here.
    ' For example:
    '    Dim x As Object
    '    MsgBox(x.ToString)
    
  4. En el Catch bloque, use el My.Application.Log.WriteException método para escribir la información de excepción.

    My.Application.Log.WriteException(ex,
        TraceEventType.Error,
        "Exception in ExceptionLogTest " &
        "with argument " & fileName & ".")
    

    En el ejemplo siguiente se muestra el código completo para registrar una excepción controlada.

    Public Sub ExceptionLogTest(ByVal fileName As String)
        Try
            ' Code that might generate an exception goes here.
            ' For example:
            '    Dim x As Object
            '    MsgBox(x.ToString)
        Catch ex As Exception
            My.Application.Log.WriteException(ex,
                TraceEventType.Error,
                "Exception in ExceptionLogTest " &
                "with argument " & fileName & ".")
        End Try
    End Sub
    

Para registrar una excepción no controlada

  1. Seleccione un proyecto en el Explorador de soluciones. En el menú Proyecto , elija Propiedades.

  2. Haga clic en la pestaña Aplicación .

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

    Se abrirá el archivo ApplicationEvents.vb.

  4. Abra el archivo ApplicationEvents.vb en el Editor de código. En el menú General , elija MyApplication Events( Eventos de aplicación).

  5. En el menú Declaraciones , elija UnhandledException.

    La aplicación genera el UnhandledException evento antes de que se ejecute la aplicación principal.

  6. Agregue el My.Application.Log.WriteException método al controlador de UnhandledException eventos.

    My.Application.Log.WriteException(e.Exception,
        TraceEventType.Critical,
        "Application shut down at " &
        My.Computer.Clock.GmtTime.ToString)
    

    En el ejemplo siguiente se muestra el código completo para registrar una excepción no controlada.

    Private Sub MyApplication_UnhandledException(
        ByVal sender As Object,
        ByVal e As ApplicationServices.UnhandledExceptionEventArgs
    ) Handles Me.UnhandledException
        My.Application.Log.WriteException(e.Exception,
            TraceEventType.Critical,
            "Application shut down at " &
            My.Computer.Clock.GmtTime.ToString)
    End Sub
    

Consulte también