Рейтинг@Mail.ru

Как добавить обработчик неперехваченных исключений в WinForms (VB.NET)

Чтобы обработать неперехваченное исключение в приложение .NET, в основной модуль сборки, в процедуру загрузки главной формы приложения или в класс AppEvents.vb, добавим код:

Private Sub formLoading(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
    AddHandler AppDomain.CurrentDomain.UnhandledException, AddressOf onUnhandledException
End Sub

Собственно, сам обработчик исключения типа UnhandledException:

Private Sub onUnhandledException(ByVal sender As Object, ByVal e As UnhandledExceptionEventArgs)
    MessageBox.Show(String.Format("Источник:{0}. Описание:{1}", sender, e.ExceptionObject), "Возникло необработанное исключение")
    '[Какая-то обработка...]'
End Sub

Теперь, при возникновении исключительной ситуации, которая не была обработана в коде приложения, она будет обработана в данной процедуре.

Поделиться