Поделиться через


Событие My.Application.UnhandledException

Обновлен: Июль 2008

Возникает, когда приложение встречает необработанное исключение.

' Usage
Public Sub Me_UnhandledException( _
   ByVal sender As Object, _
   ByVal e As UnhandledExceptionEventArgs _
) Handles Me.UnhandledException
End Sub
' Declaration
Public Event UnhandledException( _
   ByVal sender As Object, _
   ByVal e As UnhandledExceptionEventArgs _
)

Параметры

  • sender
    Объект Object, который вызвал событие.

  • e
    Объект UnhandledExceptionEventArgs, содержащий необработанные исключения и дополнительные сведения.

Заметки

Приложение вызывает событие UnhandledException при обнаружении необработанного исключения. Это событие является частью модели приложения Visual Basic. Дополнительные сведения см. в разделе Обзор модели приложения в Visual Basic.

Можно использовать свойство Exception параметра e для доступа к необработанному исключению, вызвавшему данное событие.

Можно использовать свойство ExitApplication параметра e для проверки того, закончилось ли выполнение приложения. По умолчанию ExitApplication имеет значение True. Таким образом, работа приложения завершается после завершения обработчика событий UnhandledException. Можно установить значение False в обработчике событий UnhandledException, чтобы оставить приложение запущенным и вернуть его в состояние ожидания.

Код для обработчика событий UnhandledException хранится в файле ApplicationEvents.vb, которой скрыт по умолчанию.

Доступ к окну редактора кода для событий приложения

  1. Для проекта, выбранного в обозревателе решений, в меню Проект выберите элемент Свойства.

  2. Перейдите на вкладку Приложение.

  3. Нажмите кнопку Просмотреть события приложения, чтобы открыть редактор кода.

Дополнительные сведения см. в разделе Практическое руководство. Обработка событий приложения (Visual Basic).

3a02k5s0.alert_note(ru-ru,VS.90).gifПримечание.

Компилятор Visual Basic запрещает приложениям, созданным для отладки из вызова этого события, обращаться к необработанным исключениям. Это означает, что при тестировании приложения посредством запуска его в отладчике интегрированной среды разработки Visual Studio обработчик событий UnhandledException вызван не будет. Дополнительные сведения о построении приложений для отладки см. в разделе /debug (Visual Basic).

Задачи

В следующей таблице перечислены примеры задач, включающих событие My.Application.UnhandledException.

Задача

См. разделы

Использование событий, предоставляемых моделью приложения Visual Basic, для запуска кода

Практическое руководство. Выполнение кода при запуске или завершении приложения

Журнал необработанных исключений

Практическое руководство. Запись в журнал сведений об исключениях в Visual Basic

Пример

В этом примере событие My.Application.UnhandledException используется для записи в журнал всех необработанных исключений.

Private Sub MyApplication_UnhandledException( _
    ByVal sender As Object, _
    ByVal e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs _
) Handles Me.UnhandledException
    My.Application.Log.WriteException(e.Exception, _
        TraceEventType.Critical, _
        "Unhandled Exception.")
End Sub

Необходимо ввести код в окно редактора кода для событий приложения. Чтобы открыть это окно, следуйте инструкциям в разделе "Примечания" этого раздела. Дополнительные сведения см. в разделе Практическое руководство. Обработка событий приложения (Visual Basic).

Поскольку событие UnhandledException не вызывается, когда отладчик присоединен к приложению, необходимо запустить этот пример вне среды Visual Studio.

Требования

Пространство имен:Microsoft.VisualBasic.ApplicationServices

Класс:WindowsFormsApplicationBase

Сборка: библиотека времени выполнения Visual Basic (в Microsoft.VisualBasic.dll)

Доступность по типу проекта

Тип проекта

Доступность

Приложение Windows

Да

Библиотека классов

Нет

Консольное приложение

Нет

Библиотека элементов управления Windows

Нет

Библиотека веб-элементов управления

Нет

Служба Windows

Нет

Веб-узел

Нет

Разрешения

Могут потребоваться следующие разрешения.

Разрешение

Описание

SecurityPermission

Управляет возможностью добавления обработчика событий для этого события. Связанное перечисление: SecurityPermissionFlag.ControlAppDomain.

Дополнительные сведения см. в разделах Управление доступом для кода и Запрос разрешений.

См. также

Основные понятия

Обзор модели приложения в Visual Basic

Ссылки

Объект My.Application

Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs

Журнал изменений

Дата

Журнал изменений

Причина

Июль 2008

Пересмотрены сведения о настройках обработчика событий UnhandledException в подразделе "Примечания".

Исправление ошибки содержимого.