Procedimento principal no Visual Basic

Toda aplicação Visual Basic deve conter um procedimento chamado Main. Esse procedimento serve como o ponto inicial e para o controle geral de sua aplicação. A.NET Framework chama o Main procedimento quando ele foi carregado em seu aplicativo e está pronto para passar o controle a ele. A não ser que você esteja criando um aplicativo Windows Forms, você deve escrever o procedimento Main para aplicativos que executem nelas mesmas.

Maincontém o código que será executada primeiro. Na Main, determinar qual formulário está a ser carregada pela primeira vez, quando o programa for iniciado, descobrir se uma cópia do seu aplicativo já está em execução no sistema, estabelecer um conjunto de variáveis para seu aplicativo ou abrir um banco de dados que o aplicativo exige.

Requisitos para o procedimento Main

Um arquivo que é executado em seu próprio (normalmente com extensão. exe) deve conter um Main procedimento. Uma biblioteca (por exemplo, com extensão. dll) não é executado no seu próprio e não requer um Main procedimento. Os requisitos para os diferentes tipos de projetos que você pode criar são os seguintes:

  • Aplicativos de console executassem sozinhos, e você deve fornecer pelo menos um Main procedimento. .

  • Executar seus próprios aplicativos do Windows Forms. No entanto, o compilador Visual Basic gera automaticamente um Main procedimento de tal um aplicativo e você não precisará escrever um.

  • Bibliotecas de classes não requerem um Main procedimento. Elas incluem bibliotecas de controle do Windows e bibliotecas de controle da Web. Aplicativos da Web são implantados como bibliotecas de classes.

Declarar o procedimento Main

Existem quatro maneiras para declarar a Main procedimento. Pode levar argumentos ou não, e ele pode retornar um valor ou não.

Dica

Se você declarar Main em uma classe, você deve usar o Shared palavra-chave.Em um módulo de Main não precisa ser Shared.

  • A maneira mais simples é declarar um Sub procedimento que não usam argumentos ou retornar um valor.

    Module mainModule
        Sub Main()
            MsgBox("The Main procedure is starting the application.")
            ' Insert call to appropriate starting place in your code.
            MsgBox("The application is terminating.")
        End Sub
    End Module
    
  • Maintambém pode retornar um Integer valor, que o sistema operacional usa como o código de saída para o seu programa. Outros programas podem testar esse código examinando o valor ERRORLEVEL do Windows. Para retornar um código de saída, você deve declarar Main como um Function procedimento em vez de um Sub procedimento.

    Module mainModule
        Function Main() As Integer
            MsgBox("The Main procedure is starting the application.")
            Dim returnValue As Integer = 0
            ' Insert call to appropriate starting place in your code.
            ' On return, assign appropriate value to returnValue.
            ' 0 usually means successful completion.
            MsgBox("The application is terminating with error level " &
                 CStr(returnValue) & ".")
            Return returnValue
        End Function
    End Module
    
  • Maintambém pode tirar uma String matriz como um argumento. Cada seqüência de caracteres na matriz contém um dos argumentos de linha de comando usados para invocar o seu programa. Você pode tomar ações diferentes dependendo de seus valores.

    Module mainModule
        Function Main(ByVal cmdArgs() As String) As Integer
            MsgBox("The Main procedure is starting the application.")
            Dim returnValue As Integer = 0
            ' See if there are any arguments.
            If cmdArgs.Length > 0 Then
                For argNum As Integer = 0 To UBound(cmdArgs, 1)
                    ' Insert code to examine cmdArgs(argNum) and take
                    ' appropriate action based on its value.
                Next argNum
            End If
            ' Insert call to appropriate starting place in your code.
            ' On return, assign appropriate value to returnValue.
            ' 0 usually means successful completion.
            MsgBox("The application is terminating with error level " &
                 CStr(returnValue) & ".")
            Return returnValue
        End Function
    End Module
    
  • Você pode declarar Main para examinar os argumentos de linha de comando, mas não retornar um código de saída, como a seguir.

    Module mainModule
        Sub Main(ByVal cmdArgs() As String)
            MsgBox("The Main procedure is starting the application.")
            Dim returnValue As Integer = 0
            ' See if there are any arguments.
            If cmdArgs.Length > 0 Then
                For argNum As Integer = 0 To UBound(cmdArgs, 1)
                    ' Insert code to examine cmdArgs(argNum) and take
                    ' appropriate action based on its value.
                Next argNum
            End If
            ' Insert call to appropriate starting place in your code.
            MsgBox("The application is terminating.")
        End Sub
    End Module
    

Consulte também

Referência

Estrutura de um programa Visual Basic

/main

Compartilhado (Visual Basic)

MsgBox

Instrução Sub (Visual Basic)

Instrução Function (Visual Basic)

Tipo de dados inteiro (Visual Basic)

Tipo de dados da cadeia de caracteres (Visual Basic)

Length

UBound

Outros recursos

Versão de Visual Basic de Hello, World