VB.NET WinFormsアプリケーションのProgram.csに相当するものは何ですか?
.CSアプリをVB.NETに移動する必要があります。
Program.csのWinFormsプロジェクトにフォームがないため、次のようにします。
Application.Run(new MyForm(parm1, parm2);
このコードをVB.NETで移動するにはどうすればよいですか?
ありがとう
デフォルトでは、VB.NETアプリケーションは不思議なWindowsアプリケーションフレームワークを使用します。つまり、ビルドプロセスにより、メインフォームとして使用するフォームを自動的に実行するエントリポイントが追加されます。これらの設定には、[プロジェクトのプロパティ] >[アプリケーション] >[ Windowsアプリケーションフレームワークのプロパティ]からアクセスできます。
フレームワークを使用しない場合は、 [アプリケーションフレームワークを有効にする]チェックボックスをオフにしてから、スタートアップオブジェクトSub Main
として使用するものを選択します。次に、C#のProgram.csの場合と同様に、アプリケーションへのエントリポイントとなるメソッドを使用してモジュールを作成できます。Public Sub Main
Program.csでもYouNameIt.csでも構いません。
デフォルトのエントリポイントはMain()
です。
別のエントリポイントがない限り、このコードは機能するはずです(プロジェクト設定で指定できます)。
Shared Sub Main()
' Starts the application.
Application.Run(New Form1())
End Sub
スティーブンの答えが言うように、デフォルトProgram.cs
では、VB.NETアプリケーションのようなものは必要ありません。ただし、標準の起動コードを置き換える場合は、新しいモジュールを追加して、それをスタートアップオブジェクトとして選択できます。
まず、プロジェクトを右クリックして、[追加:モジュール...]を選択します。モジュールには任意の名前を付けることができますが、C#のデフォルトと一致するようにProgram.vbという名前を付けました。次のコードを貼り付けます。
Module Program
Public Sub Main()
Application.Run(New Form1()) ''//Use your main form here
End Sub
End Module
次に、プロジェクトを右クリックして、[プロパティ]を選択します。[アプリケーション]タブで、[アプリケーションフレームワークを有効にする]のチェックを外します。次に、スタートアップオブジェクトをProgramに変更します。Main()
Sub Mainと呼ばれる別のオプションがあり、どこにいてもサブルーチンを実行すると思います。
Main()
標準の起動コードを置き換えたので、サブルーチンに他のものを追加できます。MSDNでもう1つ気づきました(方法:アプリケーションのスタートアップオブジェクトを変更する):
カスタムSubMainプロシージャをStartupオブジェクトとして使用する場合、アプリケーションイベント(、、、、および)のコードは
Startup
実行されません。Shutdown
StartupNextInstance
UnhandledException