什么是VB.NET中的Program.cs

时间:2012-05-10 13:09:45

标签: c# vb.net winforms

VB.NET WinForms应用程序中Program.cs的等价物是什么?

我需要将.CS应用程序移动到VB.NET。

由于我在Program.cs的WinForms项目中没有表单,因此我执行以下操作:

Application.Run(new MyForm(parm1, parm2);

如何在VB.NET中移动此代码?

由于

3 个答案:

答案 0 :(得分:28)

默认情况下,VB.NET应用程序使用神秘的 Windows应用程序框架,这意味着构建过程会为您添加一个入口点,该入口点会自动运行您用作主窗体的任何一种形式。您可以通过项目属性>访问这些设置申请> Windows应用程序框架属性

如果您不想使用该框架,请取消选中启用应用程序框架复选框,然后选择您要将Sub Main用作启动对象即可。然后,您可以使用Public Sub Main方法创建一个模块,该方法将成为应用程序的入口点,就像在C#中的Program.cs中一样。

答案 1 :(得分:9)

无论是Program.cs还是YouNameIt.cs都无关紧要。

默认入口点为Main()

此代码应该有效,除非您有另一个入口点(可以在项目设置中指定)。

Shared Sub Main()     
   ' Starts the application.
     Application.Run(New Form1())
End Sub

答案 2 :(得分:3)

正如Steven's answer所述,默认情况下,您不需要在VB.NET应用程序中使用Program.cs之类的内容。但是,如果要替换标准启动代码,可以添加新模块并将其选为启动对象。

首先,右键单击项目并选择Add:Module ....您可以将模块命名为您喜欢的任何名称,但我将其命名为Program.vb以与C#默认值保持一致。粘贴以下代码:

Module Program
    Public Sub Main()
        Application.Run(New Form1()) ''//Use your main form here
    End Sub
End Module

接下来,右键单击项目并选择“属性”。在“应用程序”选项卡上,取消选中“启用应用程序框架”。然后将启动对象更改为Program。还有一个名为Sub Main的选项,我认为它将在任何地方运行Main()子程序。

现在您已经替换了标准启动代码,您可以在Main()子例程中添加其他内容。我在MSDN (How to: Change the Startup Object for an Application)注意到了另外一件事:

  

使用自定义Sub Main过程作为Startup对象时,不会执行应用程序事件(StartupShutdownStartupNextInstanceUnhandledException)中的代码。