Ler en inglés

Compartir por


AppDomain.UnhandledException Evento

Definición

Se produce cuando no se detecta una excepción.

C#
public event UnhandledExceptionEventHandler? UnhandledException;
C#
public event UnhandledExceptionEventHandler UnhandledException;
C#
[add: System.Security.SecurityCritical]
[remove: System.Security.SecurityCritical]
public event UnhandledExceptionEventHandler UnhandledException;

Tipo de evento

Implementaciones

Atributos

Ejemplos

En el ejemplo siguiente se muestra el UnhandledException evento . Define un controlador de eventos, MyHandler, que se invoca cada vez que se produce una excepción no controlada en el dominio de aplicación predeterminado. A continuación, produce dos excepciones. El primero se controla mediante un bloque try/catch . El segundo es no controlado e invoca la MyHandle rutina antes de que finalice la aplicación.

C#
using System;

public class Example
{
   public static void Main()
   {
      AppDomain currentDomain = AppDomain.CurrentDomain;
      currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyHandler);

      try {
         throw new Exception("1");
      } catch (Exception e) {
         Console.WriteLine("Catch clause caught : {0} \n", e.Message);
      }

      throw new Exception("2");
   }

   static void MyHandler(object sender, UnhandledExceptionEventArgs args)
   {
      Exception e = (Exception) args.ExceptionObject;
      Console.WriteLine("MyHandler caught : " + e.Message);
      Console.WriteLine("Runtime terminating: {0}", args.IsTerminating);
   }
}
// The example displays the following output:
//       Catch clause caught : 1
//
//       MyHandler caught : 2
//       Runtime terminating: True
//
//       Unhandled Exception: System.Exception: 2
//          at Example.Main()

Comentarios

Para obtener más información sobre esta API, consulte Comentarios complementarios de la API para UnhandledException.

Se aplica a

Produto Versións
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1