C # - Возможно ли создать приложение Windows Forms, которое может запускаться из командной строки с параметрами? - PullRequest
12 голосов
/ 05 октября 2009

Мне нужно приложение Windows Forms, которое будет содержать пользовательский интерфейс, но я хочу, чтобы оно запускалось из командной строки с некоторыми параметрами, возможно, также с опцией /hide или /visible=false.

Как можно прочитать параметры командной строки? И настроить соответственно?

Ответы [ 4 ]

27 голосов
/ 05 октября 2009

Если вы измените эту основную подпись по умолчанию:

[STAThread]
static void Main()

К этому:

[STAThread]
static void Main(String[] args)

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

System.Environment.GetCommandLineArgs();
8 голосов
/ 05 октября 2009
[STAThread]
static void Main(string[] args)
{
    if (args.Length == 0)
    {
        // Run the application in a windows form
        Application.Run(new MainForm( ));
    }
    else
    {
        // Run app from CLI
        Console.WriteLine(DoStuff(args));
    }
}
3 голосов
/ 05 октября 2009

Использование Environment.GetCommandLineArgs()

2 голосов
/ 05 октября 2009

Да, он должен работать, чтобы создать проект как обычный проект приложения Windows. Затем в program.cs перед запуском окна вызовите Environment.GetCommandLineArgs(), чтобы получить аргументы командной строки и проанализируйте их, чтобы сделать то, что вы хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...