Можно ли вернуть определенный код выхода, когда пользователь внезапно закрывает мое консольное приложение?

Возможный дубликат:
Выход консоли захвата C #

Когда я запускаю свое консольное приложение, и пользователь закрывает его, закрыв окно консоли, код выхода равен 0. Как установить конкретный код ошибки в таких случаях?


person Louis Rhys    schedule 02.02.2012    source источник
comment
возможный дубликат выхода консоли захвата C #, " При выходе "для консольного приложения   -  person Cody Gray    schedule 02.02.2012
comment
Что вы используете, чтобы резко закрыть приложение?   -  person M.Babcock    schedule 02.02.2012


Ответы (1)


Один из способов - установить для ExitCode все, что вы хотите, в любое время на протяжении всей программы, а в конце программы установить его на 0. В моем примере, если пользователь закрывает консоль до завершения приложения, он сообщает ExitCode -1, в противном случае он устанавливает ExitCode равным 0:

    static void Main(string[] args)
    {
        Environment.ExitCode = -1;
        for (int i = 0; i < 20; i++)
        {
            Thread.Sleep(1000);
        }

        Environment.ExitCode = 0;
        Console.WriteLine("Done!");
    }
person doogle    schedule 21.02.2012