Visual Basic'de Ana Yordam
her Visual Basic uygulamasının adlı bir yordam içermesi gerekir Main . Bu yordam, uygulamanız için başlangıç noktası ve genel denetim görevi görür. .NET Framework, Main uygulamanızı yüklemiş ve denetimi geçirmeye hazırsa, yordamınız çağrılır. Windows Forms uygulaması oluşturmadığınız takdirde, Main kendi üzerinde çalışan uygulamalar için yordamı yazmanız gerekir.
Main İlk olarak çalışan kodu içerir. İçinde Main , program başlatıldığında önce hangi formun yükleneceğini belirleyebilirsiniz, uygulamanızın bir kopyasının sistemde zaten çalışmakta olup olmadığını bulabilir, uygulamanız için bir dizi değişken oluşturun veya uygulamanın gerektirdiği bir veritabanını açın.
Ana yordamın gereksinimleri
Kendi üzerinde çalışan bir dosya (genellikle uzantı .exe ile) bir Main yordam içermelidir. Bir kitaplık (örneğin, .dll uzantılı) kendi üzerinde çalışmaz ve bir Main yordam gerektirmez. Oluşturabileceğiniz farklı proje türleri için gereksinimler şunlardır:
Konsol uygulamaları kendi üzerinde çalışır ve en az bir yordam sağlamanız gerekir
Main.Windows Forms uygulamaları kendi üzerinde çalışır. ancak, Visual Basic derleyici
Mainbu uygulama için otomatik olarak bir yordam oluşturur ve bir tane yazmanız gerekmez.Sınıf kitaplıkları bir
Mainyordam gerektirmez. bunlar Windows denetim kitaplıklarını ve Web denetim kitaplıklarını içerir. Web uygulamaları, sınıf kitaplıkları olarak dağıtılır.
Ana yordamı bildirme
Yordamı belirtmenin dört yolu vardır Main . Bağımsız değişkenler alabilir veya içermez ve bir değer döndürebilir.
Not
MainBir sınıfında bildirirseniz Shared anahtar sözcüğünü kullanmanız gerekir. Bir modülde Main olması gerekmez Shared .
En basit yol,
Subbağımsız değişken olmayan veya bir değer döndüren bir yordam bildirmenin bir yoludur.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 ModuleMain``Integer, işletim sisteminin programınız için çıkış kodu olarak kullandığı bir değer de döndürebilir. diğer programlar Windows ERRORLEVEL değerini inceleyerek bu kodu test edebilir. Çıkış kodu döndürmek için,Mainyordam yerine bir yordam olarak bildirmeniz gerekirFunctionSub.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 ModuleMain, birStringdizi bağımsız değişken 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 ModuleMainKomut satırı bağımsız değişkenlerini incelemek için, ancak aşağıdaki gibi bir çıkış kodu döndürmezsiniz.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