Instrução End

Encerra a execução imediatamente.

Sintaxe

End  

Comentários

Você pode colocar a instrução End em qualquer lugar em um procedimento para forçar todo o aplicativo a parar de executar. End fecha todos os arquivos abertos com uma instrução Open e limpa todas as variáveis do aplicativo. O aplicativo fecha assim que não há outros programas que contêm referências a seus objetos e nenhum de seus códigos está em execução.

Observação

A instrução End interrompe a execução de código abruptamente e não invoca o método Dispose ou Finalize, ou qualquer outro código do Visual Basic. As referências de objeto mantidas por outros programas são invalidadas. Se uma instrução End for encontrada dentro de um bloco Try ou Catch, o controle não passará para o bloco Finally correspondente.

A instrução Stop suspende a execução, mas, ao contrário de End, não fecha nenhum arquivo ou limpa nenhuma variável, a menos que ela seja encontrada em um arquivo executável compilado (.exe).

Como End encerra seu aplicativo sem atender a nenhum recurso que possa estar aberto, você deve tentar fechar de maneira limpa antes de usá-lo. Por exemplo, se o aplicativo tiver formulários abertos, você deverá fechá-los antes que o controle chegue à instrução End.

Você deve usar End com moderação e somente quando precisar parar imediatamente. As formas normais de encerrar um procedimento (Instrução Return e Instrução Exit) não apenas fecham o procedimento de maneira limpa, mas também dão ao código de chamada a oportunidade de fechar de maneira limpa. Um aplicativo de console, por exemplo, pode simplesmente Return do procedimento Main.

Importante

A instrução End chama o método Exit da classe Environment no namespace System. Exit requer que você tenha permissão UnmanagedCode. Se você não tiver, ocorrerá um erro SecurityException.

Quando seguida por uma palavra-chave adicional, a Instrução End <keyword> delineia a definição do procedimento ou bloco apropriado. Por exemplo, End Function encerra a definição de um procedimento Function.

Exemplo

O exemplo a seguir usa a instrução End para encerrar a execução do código se o usuário a solicitar.

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

Anotações do desenvolvedor de dispositivo inteligente

Não há suporte para essa instrução.

Confira também