Код выхода из приложения Windows Forms

Как вернуть ненулевой код выхода из приложения Windows Forms.

Application.Exit() является предпочтительным способом выхода из приложения, но нет аргумента кода выхода.

Я знаю о Environment.Exit(), но это не очень хороший способ закрыть цикл приложения....

Ответы

Ответ 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);
    } 
}

Ответ 2

Если ваш метод main возвращает значение, вы можете вернуть туда код выхода. В противном случае вы можете использовать Environment.ExitCode, чтобы установить его.

Ответ 3

перейдите на вкладку событий в своей форме и щелкните по клику дважды щелкните по ней, а затем в поле кода напишите Environment.Exit(0);