Sub Main 只能在命名空間內宣告一次。
錯誤 ID: BC30738
原因
當您在啟用 Visual Basic 應用程式架構時定義自己的 Sub Main 程式時,通常會在 Windows Forms 應用程式中發生此錯誤。 應用程式架構會自動產生程序 Main ,當您新增另一個程序時會產生衝突。
更正這個錯誤
選擇下列其中一種方法:
選項 1:使用應用程式架構 (建議用於大部分的 Windows Forms 應用程式)
- 移除您的自訂
Sub Main程序。 - 使用應用程式架構設定啟動表單和初始化程式碼:
- 在專案屬性應用程式>設定啟動表單。
- 將事件
My.MyApplication用於自訂啟動邏輯。
選項 2:停用應用程式架構
如果您需要以程式設計方式控制應用程式啟動 (例如,根據命令列引數選取要顯示的表單):
- 在 [專案屬性]> [應用程式] 索引標籤中,取消勾選 [啟用應用程式架構]。
- 將 Startup 物件 設定為包含
Sub Main的模組或類別。 - 實作您自己的
Sub Main程序來控制應用程式啟動。
選項 3:移除重複的主要程序
- 確保整個專案中只有一個
Sub Main程序。
存取 My.MyApplication.Main
如果您需要存取自動產生的啟動程式碼,您可以使用 WindowsFormsApplicationBase 物件及其事件,例如 Startup、 StartupNextInstance和 Shutdown。 應用程式架構提供這些事件,專門用於自訂應用程式行為,而無需定義您自己的 Main 程序。