Aracılığıyla paylaş


Visual Basic'te Ana Yordam

Her Visual Basic uygulaması adlı Mainbir yordam içermelidir. Bu yöntem, uygulamanız için başlangıç noktası ve genel kontrol görevi görür. .NET Framework, uygulamanızı yüklediğinde ve denetimi uygulamaya geçirmeye hazır olduğunda yordamınızı Main çağırır. Windows Forms uygulaması oluşturmadığınız sürece, kendi başına çalışan uygulamalar için Main yordamını yazmalısınız.

Main ilk çalışan kodu içerir. içinde Main, program başlatıldığında önce hangi formun yükleneceğini belirleyebilir, uygulamanızın bir kopyasının sistemde zaten çalışıp çalışmadığını öğrenebilir, uygulamanız için bir dizi değişken oluşturabilir veya uygulamanın gerektirdiği bir veritabanını açabilirsiniz.

Ana Prosedür gereksinimleri

Kendi başına çalışan bir dosya (genellikle uzantı .exe) bir Main yordam içermelidir. Kitaplık (örneğin, uzantı .dll) tek başına çalışamaz ve bir Main yordam gerektirmez. Oluşturabileceğiniz farklı proje türlerinin gereksinimleri şunlardır:

  • Konsol uygulamaları kendi başına çalışır ve en az bir Main yordam sağlamanız gerekir.

  • Windows Forms uygulamaları kendi başına çalışır. Ancak, Visual Basic derleyicisi böyle bir uygulamada otomatik olarak bir Main yordam oluşturur ve yazmanız gerekmez.

  • Sınıf kitaplıkları bir Main yordam gerektirmez. Bunlar Windows Denetim Kitaplıkları ve Web Denetim Kitaplıkları'dır. Web uygulamaları sınıf kitaplıkları olarak dağıtılır.

Ana Prosedürü Tanımlama

Prosedürü bildirmek için dört yol vardır Main. Bağımsız değişkenleri alıp almayabilir ve bir değer döndürebilir veya döndüremez.

Uyarı

Bir sınıfta Main bildirimi yaparsanız, Shared anahtar sözcüğünü kullanmanız gerekir. Bir modülde, MainShared olması gerekmez.

  • En basit yol, bağımsız değişken almayan veya değer döndürmeyen bir Sub yordam bildirmektir.

    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 ayrıca işletim sisteminin programınız için çıkış kodu olarak kullandığı bir Integer değer döndürebilir. Diğer programlar, Windows ERRORLEVEL değerini inceleyerek bu kodu test edebilir. Çıkış kodunu döndürmek için, Main'yi Function yordamı yerine Sub yordamı olarak bildirmeniz gerekir.

    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 bir dizi String parametresi olarak da alabilir. Dizideki her dize, programınızı çağırmak için kullanılan komut satırı bağımsız değişkenlerinden birini içerir. Değerlerine bağlı olarak farklı eylemler gerçekleştirebilirsiniz.

    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
    
  • Komut satırı bağımsız değişkenlerini incelemek için Main bildirebilirsiniz, ancak çıkış kodu döndüremezsiniz, aşağıdaki gibi.

    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
    

Ayrıca bakınız