Почему исключения AppDomain неизменно завершают работу приложения?
Это связано спредыдущий вопрос
Что я'Теперь я пытаюсь понять, почему исключение потока пользовательского интерфейса может быть предотвращено при завершении приложения, в то время как исключения не-пользовательского интерфейса могут 'т быть
Для справки см.этот пример.
Самое главное, что я хотел бы иметь возможность сделать в этом случае "молча» завершить процесс - без отображения диалогового окна Windows, которое спрашивает,Я хотел бы отправить сообщение об ошибке или нет.
Это мой AppDomain UnhandledExceptionHandler:
private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
try
{
// Maybe do some logging here if allowed
}
catch
{
}
// then just terminate the application
Application.Exit();
}
ОБНОВИТЬ
В свете комментариев вэтот ответЯЯ хотел бы уточнить, что самое главное, яЯ хотел бы узнать больше о механизме, который позволяет потоку пользовательского интерфейса иметь раннюю возможность ловить необработанные исключения черезApplication.ThreadException
механизм. И может ли такое поведение быть реализовано в потоке без пользовательского интерфейса.