// Set the unhandled exception mode to force errors to go through our handler.
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
// Add the event handler for handling thread exceptions to the event.
AppDomain.CurrentDomain.UnhandledException +=
new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
Благодаря Брайану Дисхау
Ясно, что это не дает вам некоторого не декларативного способа назначения обработчика, как, например, назначение прослушивателя трассировки в app.config, но это дает мне идею.
Вы можете написать свой собственный раздел конфигурации, который будет выполнять этот код. Затем, когда конфиг загружен, вы можете назначить обработчик событий, я найду несколько ссылок о том, как это сделать ...
Однако ваша конфигурация должна присутствовать в основном приложении, так что, возможно, это неправильно.
РЕДАКТИРОВАТЬ Извините, я не думаю, что есть способ сделать это без какой-либо среды IoC, что еще могло бы загрузить ваш класс. Единственные варианты, которые я могу придумать, требуют каких-то изменений в основном приложении.
Мне интересно, что я не прав.