2017-02-25 4 views
-1

Vor kurzem hat ich mir es bin die Schaffung mit diesem Programm mit Themen wurde, zeigt die folgende Fehlermeldung, wenn ein schwerwiegender Fehler in dem Konsole-Anwendung geöffnet lassen?

Program has stopped working 

A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available. 

Programm verursacht wird Gibt es eine Möglichkeit ich den Fehler umgehen kann und das Programm stoppen abstürzen und nicht mehr reagieren und diesen Fehler werfen? Ich frage nicht, wie man mit diesem spezifischen Fehler umgehen soll, ich frage, gibt es eine Möglichkeit, mit irgendeiner Art von Fehler umzugehen und nur die Fehlerdetails zu protokollieren, anstatt das ganze Programm zu stürzen und alle anderen Teile zu stören?

+1

Wenn möglich, C# Quellcode auf der Frage gestellt. – Tony

+0

Der Code ist nicht erforderlich, ich frage eine universelle Frage, die Code nicht beantwortet werden muss. – Ashkru

+0

Sie können versuchen {{Ihr Code hier}} catch (Exception ex) {Console.WriteLine (ex.ToString();} – Tony

Antwort

1

Normalerweise geschieht dies nur, wenn Ihre App keine Ausnahme behandelt. Wenn Sie Ihre gesamte Konsolenanwendung in einen try/catch-Block einschließen. Fangen Sie einfach die Ausnahme und protokollieren Sie die Ausnahme oder ignorieren Sie sie.

Für nicht behandelte Ausnahmen können Sie dieses Ereignis AppDomain.UnhandledException

verwenden werden alle Ausnahmen auf alle Threads in Ihrem AppDomain behandeln.

dies in Ihren public static void Main method

AppDomain.CurrentDomain.UnhandledException 
    += delegate(object sender, UnhandledExceptionEventArgs args) 
    { 
     var exception = Exception e = (Exception) args.ExceptionObject; 
     Console.WriteLine("Unhandled exception: " + exception); 
     Environment.Exit(1); 
    } 
Verwandte Themen