Ответ 1
Application.Exit
просто заставляет вызов Application.Run
(Это обычно в program.cs
) для завершения. так что вы могли бы:
Application.Run(new MyForm());
Environment.Exit(0);
и все еще внутри вашего приложения Application.Exit
, чтобы закрыть его.
Малый образец
class Program
{
static int exitCode = 0;
public static void ExitApplication(int exitCode)
{
Program.exitCode = exitCode;
Application.Exit();
}
public int Main()
{
Application.Run(new MainForm());
return exitCode;
}
}
class MainForm : Form
{
public MainForm()
{
Program.ExitApplication(42);
}
}