Bagikan melalui


Prosedur Utama di Visual Basic

Setiap aplikasi Visual Basic harus berisi prosedur yang disebut Main. Prosedur ini berfungsi sebagai titik awal dan kontrol keseluruhan untuk aplikasi Anda. .NET Framework memanggil prosedur Main Anda ketika telah memuat aplikasi Anda dan siap untuk meneruskan kontrol ke prosedur tersebut. Kecuali Anda membuat aplikasi Formulir Windows, Anda harus menulis prosedur Main untuk aplikasi yang berjalan sendiri.

Main berisi kode yang berjalan terlebih dahulu. Dalam Main, Anda dapat menentukan formulir mana yang akan dimuat terlebih dahulu ketika program dimulai, mencari tahu apakah salinan aplikasi Anda sudah berjalan pada sistem, membuat sekumpulan variabel untuk aplikasi Anda, atau membuka database yang diperlukan aplikasi.

Persyaratan untuk Prosedur Utama

File yang berjalan sendiri (biasanya dengan ekstensi .exe) harus berisi prosedur Main. Pustaka (misalnya dengan ekstensi .dll) tidak berjalan sendiri dan tidak memerlukan prosedur Main. Persyaratan untuk berbagai jenis proyek yang dapat Anda buat adalah sebagai berikut:

  • Aplikasi konsol berjalan sendiri, dan Anda harus menyediakan setidaknya satu prosedur Main.

  • Aplikasi Formulir Windows berjalan sendiri. Namun, pengompilasi Visual Basic secara otomatis menghasilkan prosedur Main dalam aplikasi seperti itu, dan Anda tidak perlu menulisnya.

  • Pustaka kelas tidak memerlukan prosedur Main. Ini termasuk Pustaka Kontrol Windows dan Pustaka Kontrol Web. Aplikasi web disebarkan sebagai pustaka kelas.

Mendeklarasikan Prosedur Utama

Ada empat cara untuk mendeklarasikan prosedur Main. Ini dapat mengambil argumen atau tidak, dan dapat menampilkan nilai atau tidak.

Catatan

Jika Anda mendeklarasikan Main di kelas, Anda harus menggunakan kata kunci Shared. Dalam modul, Main tidak perlu Shared.

  • Cara paling sederhana adalah dengan mendeklarasikan prosedur Sub yang tidak mengambil argumen atau menampilkan nilai.

    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 juga dapat menampilkan nilai Integer, yang digunakan sistem operasi sebagai kode keluar untuk program Anda. Program lain dapat menguji kode ini dengan memeriksa nilai Windows ERRORLEVEL. Untuk menampilkan kode keluar, Anda harus menyatakan Main sebagai prosedur Function alih-alih prosedur Sub.

    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 juga dapat mengambil array String sebagai argumen. Setiap string dalam array berisi salah satu argumen baris perintah yang digunakan untuk memanggil program Anda. Anda dapat mengambil tindakan yang berbeda tergantung pada nilainya.

    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
    
  • Anda dapat menyatakan Main untuk memeriksa argumen baris perintah tetapi tidak menampilkan kode keluar, sebagai berikut.

    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
    

Lihat juga