С# - Можно ли создать приложение Windows Forms, которое может запускаться из командной строки с параметрами?
Я хотел бы, чтобы приложение Windows Forms содержало пользовательский интерфейс, но я хочу, чтобы он запускался из командной строки с некоторыми параметрами, возможно, также с параметром /hide
или /visible=false
.
Как можно читать параметры командной строки? И отрегулируйте соответственно?
Ответы
Ответ 1
Если вы измените основную подпись по умолчанию:
[STAThread]
static void Main()
Для этого:
[STAThread]
static void Main(String[] args)
Вы можете получить доступ к переменным командной строки, как из обычного консольного приложения, или если вы хотите получить к ним доступ из другого места, вы можете использовать:
System.Environment.GetCommandLineArgs();
Ответ 2
[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
Используйте Environment.GetCommandLineArgs()
Ответ 4
Да, он должен работать, чтобы создать проект как обычный проект приложения Windows. Затем в program.cs перед запуском окна вызовите Environment.GetCommandLineArgs()
, чтобы получить аргументы командной строки и проанализировать их, чтобы сделать то, что вы хотите.