Megosztás a következőn keresztül:


A Visual Basic fő eljárása

Minden Visual Basic-alkalmazásnak tartalmaznia kell egy úgynevezett Maineljárást. Ez az eljárás az alkalmazás kiindulópontjaként és általános vezérléseként szolgál. A .NET-keretrendszer meghívja az Main eljárást, amikor betöltötte az alkalmazást, és készen áll az irányítás átadására. Hacsak nem hoz létre Windows Forms-alkalmazást, meg kell írnia az Main önállóan futó alkalmazások eljárását.

Main az elsőként futó kódot tartalmazza. Ebben a lépésben Mainmeghatározhatja, hogy melyik űrlapot kell először betölteni a program indításakor, megállapíthatja, hogy az alkalmazás egy példánya már fut-e a rendszeren, létrehoz egy változókészletet az alkalmazáshoz, vagy megnyithat egy adatbázist, amelyet az alkalmazás igényel.

A fő eljárás követelményei

Egy önállóan futó fájlnak (általában .exe kiterjesztéssel) tartalmaznia kell egy Main eljárást. A kódtárak (például .dll kiterjesztéssel) nem futnak önállóan, és nem igényelnek Main eljárást. A létrehozható különböző típusú projektek követelményei a következők:

  • A konzolalkalmazások önállóan futnak, és legalább egy Main eljárást be kell állítania.

  • A Windows Forms-alkalmazások önállóan futnak. A Visual Basic fordító azonban automatikusan létrehoz egy eljárást egy Main ilyen alkalmazásban, és nem kell írnia egyet.

  • Az osztálykódtárakhoz nincs szükség eljárásra Main . Ezek közé tartoznak a Windows-vezérlőtárak és a webvezérlőtárak. A webalkalmazások osztálykódtárként vannak üzembe helyezve.

A fő eljárás deklarálása

Az eljárást négyféleképpen deklarálhatja Main . Argumentumokat vehet fel vagy sem, és visszaadhat egy értéket vagy sem.

Feljegyzés

Ha egy osztályban deklarál Main , a kulcsszót kell használnia Shared . Egy modulban Main nem kell .Shared

  • A legegyszerűbb módszer egy Sub olyan eljárás deklarálása, amely nem fogad el argumentumokat, és nem ad vissza értéket.

    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
    
  • Main olyan értéket is visszaadhat Integer , amelyet az operációs rendszer a program kilépési kódjaként használ. Más programok a Windows ERRORLEVEL értékének vizsgálatával tesztelhetik ezt a kódot. A kilépési kód visszaadásához eljárás helyett eljárásként Function kell deklarálnia.MainSub

    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
    
  • Main argumentumként is használhat tömböt String . A tömb minden sztringje tartalmazza a program meghívásához használt parancssori argumentumok egyikét. Az értékektől függően különböző műveleteket hajthat végre.

    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
            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
    
  • Deklarálhatja Main , hogy megvizsgálja a parancssori argumentumokat, de nem ad vissza kilépési kódot az alábbiak szerint.

    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
            End If
            ' Insert call to appropriate starting place in your code.
            MsgBox("The application is terminating.")
        End Sub
    End Module
    

Lásd még