VB.NET Main過程四種聲明方法總結(jié)
VB.NET編程語言的應(yīng)用范圍非常廣泛,其編寫方式的特殊性極大的吸引了編程人員的眼光。在學(xué)習(xí)這一語言的時候,我們會遇到有關(guān)VB.NET Main過程的相關(guān)概念,那么如何才能正確理解這一過程的聲明呢?大家可以在這里找到一些答案。#t#
每個 Visual Basic 應(yīng)用程序均必須包含一個稱為VB.NET Main過程。該過程為應(yīng)用程序的起始點并為應(yīng)用程序提供總體控制。.NET Framework 在已加載應(yīng)用程序并準(zhǔn)備將控制傳遞給它時,將調(diào)用 Main 過程。除非您要創(chuàng)建 Windows 窗體應(yīng)用程序,否則就必須為自運行的應(yīng)用程序編寫 Main 過程。
Main 中包含首先運行的代碼。在 Main 中,可以確定在程序啟動時首先加載的窗體,確定系統(tǒng)上是否已在運行您的應(yīng)用程序副本,為應(yīng)用程序建立一組變量,或者打開應(yīng)用程序需要的數(shù)據(jù)庫。
VB.NET Main過程的要求
獨立運行的文件(擴展名通常為 .exe)必須包含 Main 過程。庫(例如,擴展名為 .dll)不獨立運行,因而不需要 Main 過程??梢詣?chuàng)建的不同類型的項目的要求如下:
控制臺應(yīng)用程序可以獨立運行,而且您必須提供至少一個 Main 過程。
Windows 窗體應(yīng)用程序可以獨立運行。但是,Visual Basic 編譯器會在此類應(yīng)用程序中自動生成一個 Main 過程,因而您不需要編寫此過程。
類庫不需要 Main 過程。這些類庫包括 Windows 控件庫和 Web 控件庫。作為類庫部署 Web 應(yīng)用程序。
聲明VB.NET Main過程
有四種方法可以聲明 Main 過程。它可以使用參數(shù)或不使用參數(shù),可以返回值或不返回值。
注意
如果在類中聲明 Main 過程,則必須使用 Shared 關(guān)鍵字。在模塊中,Main 不必是 Shared。
最簡單的方法是聲明一個不使用參數(shù)或不返回值的 Sub 過程。
- 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 值,操作系統(tǒng)將其作為程序的退出代碼。其他程序可以通過檢查 Windows ERRORLEVEL 值來測試該代碼。若要返回退出代碼,必須將VB.NET Main過程聲明為 Function 過程而不是 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 ModuleMain
還可以采用一個 String 數(shù)組作為參數(shù)。數(shù)組中的每個字符串均包含一個用于調(diào)用程序的命令行參數(shù)。您可以根據(jù)它們的值采取不同的操作。
- 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
可以聲明VB.NET Main過程來檢查命令行參數(shù)而不返回退出代碼,如下所示。
- 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
VB.NET Main過程的相關(guān)操作方法就為大家介紹到這里。