Click here to Skip to main content
16,016,024 members
Home / Discussions / C#
   

C#

 
GeneralRe: uncaught exception handlers Pin
George_George26-Apr-08 21:04
George_George26-Apr-08 21:04 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h27-Apr-08 19:49
N a v a n e e t h27-Apr-08 19:49 
GeneralRe: uncaught exception handlers Pin
George_George27-Apr-08 19:55
George_George27-Apr-08 19:55 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h27-Apr-08 22:38
N a v a n e e t h27-Apr-08 22:38 
GeneralRe: uncaught exception handlers Pin
George_George28-Apr-08 1:20
George_George28-Apr-08 1:20 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h28-Apr-08 19:49
N a v a n e e t h28-Apr-08 19:49 
GeneralRe: uncaught exception handlers Pin
George_George29-Apr-08 2:25
George_George29-Apr-08 2:25 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h29-Apr-08 3:45
N a v a n e e t h29-Apr-08 3:45 
George_George wrote:
and I have tried even ProcessExit


ProcessExist is not needed here

George_George wrote:
After the handler for UnhandledException is executed, process is always terminated?


mm, look like you are still not clear. I will try to explain once more. AppDomain.UnhandledException is not an exception handler like catch. It's an event which will be fired before program exits due to uncaught error. After handler is executed, process will be terminated. This is a new behavior from .NET 2.0 onwards. In handler you can do necessary steps to log the error. You can't prevent application ending. In that handler you can show friendly messages to user and inform him that we are closing.

Considering all these points in mind, your demo code is working as expected. Handler is getting executed and application is closing. You need to change the handler3() method like this.
private static void Handler3(object sender, UnhandledExceptionEventArgs e)
{
    Exception exceptionOccured = e.ExceptionObject as Exception;
    string errorMessage = exceptionOccured.Message;
     Console.WriteLine("I am here");
}
. In this you can see how exception occurred is retrieved from the event argument. You can log the exception message and application will be exited gracefully.

.NET 1.1 behavior can be taken back by setting some flag value in application.config file. See this[^]. But I don't recommend that, as I don't know the pros/cons of that.

Hope it's clear now.

All C# applications should call Application.Quit(); in the beginning to avoid any .NET problems.- Unclyclopedia

How to use google | Ask smart questions

GeneralRe: uncaught exception handlers Pin
George_George29-Apr-08 4:21
George_George29-Apr-08 4:21 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h29-Apr-08 19:44
N a v a n e e t h29-Apr-08 19:44 
GeneralRe: uncaught exception handlers Pin
George_George29-Apr-08 20:23
George_George29-Apr-08 20:23 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h30-Apr-08 17:01
N a v a n e e t h30-Apr-08 17:01 
GeneralRe: uncaught exception handlers Pin
George_George1-May-08 2:42
George_George1-May-08 2:42 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h1-May-08 6:05
N a v a n e e t h1-May-08 6:05 
GeneralRe: uncaught exception handlers Pin
George_George1-May-08 21:38
George_George1-May-08 21:38 
GeneralRe: uncaught exception handlers Pin
#realJSOP27-Apr-08 3:08
professional#realJSOP27-Apr-08 3:08 
GeneralRe: uncaught exception handlers Pin
George_George27-Apr-08 3:32
George_George27-Apr-08 3:32 
GeneralRe: uncaught exception handlers Pin
Spacix One28-Apr-08 7:02
Spacix One28-Apr-08 7:02 
GeneralRe: uncaught exception handlers Pin
George_George29-Apr-08 2:20
George_George29-Apr-08 2:20 
GeneralRe: uncaught exception handlers Pin
N a v a n e e t h29-Apr-08 3:48
N a v a n e e t h29-Apr-08 3:48 
GeneralRe: uncaught exception handlers Pin
George_George29-Apr-08 4:24
George_George29-Apr-08 4:24 
GeneralRe: uncaught exception handlers Pin
Spacix One29-Apr-08 4:21
Spacix One29-Apr-08 4:21 
GeneralRe: uncaught exception handlers Pin
George_George29-Apr-08 4:26
George_George29-Apr-08 4:26 
GeneralRe: uncaught exception handlers Pin
Spacix One29-Apr-08 5:31
Spacix One29-Apr-08 5:31 
GeneralRe: uncaught exception handlers Pin
George_George29-Apr-08 19:46
George_George29-Apr-08 19:46 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.