Comment : enregistrer des exceptions dans Visual Basic
Vous pouvez utiliser les objets My.Application.Log et My.Log pour enregistrer des informations sur les exceptions qui se produisent dans votre application. Ces exemples indiquent comment utiliser la méthode My.Application.Log.WriteException pour enregistrer des exceptions que vous interceptez explicitement et des exceptions qui ne sont pas gérées.
Pour enregistrer des informations de traçage, utilisez la méthode My.Application.Log.WriteEntry. Pour plus d'informations, consultez WriteEntry.
Pour enregistrer une exception gérée
Créez la méthode qui générera les informations sur les exceptions.
Public Sub ExceptionLogTest(ByVal fileName As String) End Sub
Utilisez un bloc Try...Catch pour intercepter l'exception.
Try Catch ex As Exception End Try
Placez le code susceptible de générer une exception dans le bloc Try.
Supprimez les marques de commentaire des lignes Dim et MsgBox pour provoquer une exception NullReferenceException.
' Code that might generate an exception goes here. ' For example: ' Dim x As Object ' MsgBox(x.ToString)
Dans le bloc Catch, utilisez la méthode My.Application.Log.WriteException pour écrire les informations sur les exceptions.
My.Application.Log.WriteException(ex, TraceEventType.Error, "Exception in ExceptionLogTest " & "with argument " & fileName & ".")
L'exemple suivant affiche le code complet pour enregistrer une exception gérée.
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
Pour enregistrer une exception non gérée
Sélectionnez un projet dans l'Explorateur de solutions. Dans le menu Projet, choisissez Propriétés.
Cliquez sur l'onglet Application.
Cliquez sur le bouton Afficher les événements de l'application pour ouvrir l'éditeur de code.
Le fichier ApplicationEvents.vb s'ouvre.
Ouvrez le fichier ApplicationEvents.vb dans l'éditeur de code. Dans le menu Général, choisissez Événements MyApplication.
Dans le menu Déclarations, choisissez UnhandledException.
L'application déclenche l'événement UnhandledException avant l'exécution de l'application principale.
Ajoutez la méthode My.Application.Log.WriteException au gestionnaire d'événements UnhandledException.
My.Application.Log.WriteException(e.Exception, TraceEventType.Critical, "Application shut down at " & My.Computer.Clock.GmtTime.ToString)
L'exemple suivant affiche le code complet pour enregistrer une exception non gérée.
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
Voir aussi
Tâches
Comment : écrire des messages de journal (Visual Basic)