Оператор End

Обновлен: Ноябрь 2007

Немедленно прекращает выполнение.

End

Заметки

Оператор End можно поместить в любом месте процедуры для принудительного завершения работы приложения. Оператор End закрывает все файлы, открытые оператором Open и очищает все переменные приложения. Приложение закрывается, как только не останется других программ, поддерживающих ссылки на его объекты, и код программы не будет выполняться.

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

Оператор End резко останавливает выполнение кода, и не вызывает метод Dispose или Finalize, или любой другой код Visual Basic. Ссылки на объекты, хранящиеся в других программах, становятся недействительными. Если оператор End оказывается внутри блока Try или Catch, управление не передается в соответствующий блок Finally.

Оператор Stop приостанавливает выполнение, однако, в отличие от End, не закрывает файлы и не очищает переменные, если только не встречается в скомпилированном исполняемом файле (с расширением EXE).

Поскольку оператор End завершает приложение, не обращая внимания на какие-либо ресурсы, которые могут быть открыты, следует попробовать аккуратно закрыть их перед его использованием. Например, если в приложении имеются открытые формы, их следует закрыть перед передачей управления оператору End.

Не следует часто применять оператор End, только когда требуется немедленно прекратить выполнение приложения. Обычные способы завершения процедуры (Оператор Return (Visual Basic) и Оператор Exit (Visual Basic)) не только аккуратно завершают процедуру, но также дают вызывающему коду возможность безопасного закрытия приложения. Для консольного приложения, например, можно просто использовать Return из процедуры Main.

0wt87xba.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

Оператор End вызывает метод Exit класса Environment в пространстве имен System. Для использования Exit вы должны иметь разрешение UnmanagedCode. Иначе создается исключение SecurityException.

Если после End (Visual Basic) указано ключевое слово, это означает конец определения соответствующей процедуры или блока. Например, End Function завершает определение процедуры Function.

Пример

В приведенном ниже примере оператор End используется для завершения выполнения кода по требованию пользователя.

Sub Form_Load()
  Dim answer As MsgBoxResult
  answer = MsgBox("Do you want to quit now?", MsgBoxStyle.YesNo)
  If answer = MsgBoxResult.Yes Then
      MsgBox("Terminating program")
      End
  End If
End Sub

Примечания для разработчиков приложений для интеллектуальных устройств

Этот оператор не поддерживается.

См. также

Задачи

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

Ссылки

Оператор Stop (Visual Basic)

End (Visual Basic)

SecurityPermissionFlag