2012-05-10 2 views
12

Что такое эквивалент Program.cs в приложении VB.NET WinForms?Что эквивалентно Program.cs в VB.NET

Мне нужно перенести мое приложение .CS на VB.NET.

Поскольку я не имею форм в моем проекте WinForms в Program.cs я следующее:

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

Как перенести этот код в VB.NET?

Благодаря

+6

Не могу понять ваш гнев. Я искал раньше, и никакой ответ, который дал мне Google, был удовлетворительным. @SteveDog очистил все мои сомнения и помог мне настроить приложение. – MaiOM

+1

Один из способов избежать жалоб, таких как @ Ramhound's, чтобы показать, что вы нашли при поиске, и объяснить, почему это не удовлетворило. В любом случае, я рад, что вы спросили, потому что ответы мне помогли. –

+1

Я согласен с доном Киркби, этот вопрос появляется сверху, когда я googled 'vb.net program.cs'. – ABH

ответ

24

По умолчанию VB.NET приложения используют таинственный для Windows Framework приложений означает, что процесс сборки добавляет точку входа для вас, которая автоматически запускает какой бы форму вы используете в качестве основной формы. Вы можете получить доступ к этим настройкам через Свойства проекта>Приложение>Свойства структуры приложения Windows.

Если вы не хотите использовать рамки, снимите флажок Включить каркас приложений флажок, а затем выбрать, что вы хотите использовать Sub Main в качестве объекта запуска. Затем вы можете создать модуль с методом Public Sub Main, который будет точкой входа в приложение, как и в Program.cs на C#.

+1

Спасибо за разъяснение! – MaiOM

8

Это не имеет значения, является ли это Program.cs или YouNameIt.cs.

Точка входа по умолчанию - Main().

Этот код должен работать, если у вас нет другой точки входа (может быть указана в настройках проекта).

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

Как Steven's answer говорит, по умолчанию вам не нужно ничего, как Program.cs в приложении VB.NET. Однако, если вы хотите заменить стандартный код запуска, вы можете добавить новый модуль и выбрать его как объект запуска.

Сначала щелкните правой кнопкой мыши по проекту и выберите Добавить: Модуль .... Вы можете назвать модуль чем угодно, но я назвал его Program.vb совместимым с C# по умолчанию. Вставить в следующем коде:

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

Далее, щелкните правой кнопкой мыши на проекте и выберите Properties. На вкладке «Приложение» снимите флажок «Включить фреймворк приложения». Затем измените объект запуска на программу. Есть еще один вариант под названием Sub Main, который, я думаю, будет запускать подпрограмму Main() везде, где она есть.

Теперь, когда вы заменили стандартный код запуска, вы можете добавить другие вещи в свою подпрограмму Main(). Я заметил одну вещь на MSDN (How to: Change the Startup Object for an Application):

При использовании пользовательской процедуры Sub Main как объект запуска, код в журнале событий приложений (Startup, Shutdown, StartupNextInstance и UnhandledException) не выполняется.

Смежные вопросы