У меня есть приложение winforms. Я хотел бы запустить .exe из командной строки и перенаправить вывод из одного из выходных текстовых полей в командную строку. Я не хочу запускать приложение winform, просто запустив логику в фоновом режиме.winforms output to commandline
Я попробовал советы из этой темы
C# application both GUI and commandline
, но я не видел ни одного из моих Console.WriteLine сообщений в командной строке в cmd.exe, когда я запустил приложение через ЦМД. Exe. Может ли кто-нибудь объяснить мне, что я могу сделать неправильно?
у меня есть, если заявление, что сделал эту логику:
if(args.Length >0)
{
Console.writeline("this has arguments");
new Mainform();
}
else
{
Application.EnableVisualStyles();
Application.Run(new MainForm());
}
части иначе по-прежнему работает. Но ничего не происходит в if-части, либо используя cmd.exe для запуска приложения, либо когда я использую аргументы свойств -> debug-> командной строки и даю ему аргументы для запуска во время его отладки. Я понятия не имею, что я делаю неправильно.
Переместить логику в отдельную dll и использовать эту dll как из форм, так и из консольного приложения –
, чтобы сделать два разных приложения? Один для Winforms и один для консоли? – user2482989
Точно. И оба приложения будут использовать одну и ту же бизнес-логику, которая будет независима от пользовательского интерфейса, который вы используете –