2011-01-24 3 views

ответ

13

Один простой способ:

string[] args = Environment.GetCommandLineArgs(); 

В качестве альтернативы можно изменить Main-вызов включить параметры (в Program.cs):

static void Main(string[] args) 
{ 

Вы затем необходимо передать его в вашу форму и соответствующим образом изменить конструктор формы (предположив, что вам нужен args):

public Form1(string[] args) 
{ 
+0

Первый работает красиво! Я также выяснил, что было бы лучше определить, имеет ли он более одного аргумента, а затем получить значение по индексу 1. – Kaitlyn

+0

Отлично. :) Я часто использовал Nini для анализа конфигурации и командной строки: http://nini.sourceforge.net/ –

+0

Выглядит довольно интересно :) Кажется, что он мертв, хотя обновление в 2010 году ...:/ – Kaitlyn

1

Когда вы создаете приложение WinForm на C#, редактор создает для вас файл Program.cs. Именно там находится главная, и именно здесь доступны аргументы.

Это немного IDE «магия» из-за отсутствия лучшего термина. Существует еще «главная» функция, она просто запускает экземпляр вашей основной формы и все, что требуется для вас. Откройте этот файл и посмотрите.

1

Вам нужно изменить конструктор формы, чтобы принять параметр args.

например:

public void Form1(string[] args) 
{ 

} 
+0

Ответ stefan также верен. Вы передаете аргументы в заявку или форму? – WraithNath

+3

Это главная() запись, в которой принимают аргументы, а не форму. –

+0

@Tedd - спасибо, я понял, что на заднем плане – WraithNath

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