That enables me to log the exception, but how can I prevent the Windows
'Myapp has encountered a problem and needs to close...' dialog from popping
up?
Thanks both.
That works.
I haven't done a console app before and It is a very small one. I could
easily have wrapped that whole thing in a try/catch, but this way I learned
much more .
Be aware that this technique does not scale to services or multiple
appdomains, and it will also prevent you from diagnosing the unhandled
exception under a debugger (you can set a breakpoint on the event callback,
but that isn't convenient at all). Finally, the usual step of writing an
error to the event log will be skipped.
I also suggest passing a non-zero value to Environment.Exit(), since
processes that check the exit status (if any) will usually interpret a zero
exit status as success, which is a tad misleading.
In short, I'm not at all happy that this actually works.
I suppose it was precisely waht the OP intended to do: his own logging. You
just do it before exiting.
I also suggest passing a non-zero value to Environment.Exit(), since
processes that check the exit status (if any) will usually interpret a
zero exit status as success, which is a tad misleading.
Neither me, but its the only way I found to suppress the unwanted pop-up. I
would have much preferred some boolean to be set in the argument object to
tell the run-time I handled to event to my taste (knowing that the program
would terminate anyway).
Of course, this assumes the exception is happening somewhere that you are
unable to provide your own try/catch block in order to handle the
exception. Your original question implies this, but if it's not really
true, then obviously the best solution is to actually handle the
exception.
Yes, this really should be used as a last chance to log a catastrophic
unrecoverable error...
/LM
Ask a Question
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.