Как мне установить код завершения приложения из приложения Winforms, которое я запускаю как консольное приложение?Конечно, не разбивая консольное приложение на отдельную DLL.
У меня есть приложение Winforms.В прошлом кто-то решил создать параметры командной строки, которые будут запускаться как консольное приложение вместо приложения WinForms.Я знаю, что разбить его на отдельный проект консольного приложения - это решение, но без этого есть ли способ установить код завершения приложения?
Я пытался:
Наличие основного возврата int
Вызов Environment.Exit (int)
Настройка Environment.ExitCode = int
Никто не работал.
Затем, конечно, из командной строки я выполнил команду ниже.Но код ошибки не обновлялся.
echo% errorlevel%
public static class Program
{
// defines for commandline output
[DllImport("kernel32.dll")]
static extern bool AttachConsole(int dwProcessId);
private const int ATTACH_PARENT_PROCESS = -1;
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
public static int Main(string[] args)
{
// redirect console output to parent process;
// must be before any calls to Console.WriteLine()
AttachConsole(ATTACH_PARENT_PROCESS);
//make sure to update 0 to another number to make sure you aren't getting a false positive
return 0;
}
}