如何從Windows窗體應用程序返回非零退出代碼。從Windows窗體應用程序退出代碼
Application.Exit()是退出應用程序的首選方式,但沒有退出代碼參數。
我知道Environment.Exit(),但是這不是一個很好的方式來關閉應用循環....
如何從Windows窗體應用程序返回非零退出代碼。從Windows窗體應用程序退出代碼
Application.Exit()是退出應用程序的首選方式,但沒有退出代碼參數。
我知道Environment.Exit(),但是這不是一個很好的方式來關閉應用循環....
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);
}
}
如果您main
方法返回可以返回退出代碼中有一個值。否則,您可以使用Environment.ExitCode進行設置。
+1非常快捷的方式來完成此操作。然而,我有一個非常大的應用程序,有很多可能的退出代碼和很多不同的退出方式。我將在當前的應用程序中使用VirtualBlackFox的示例。 – Fedearne 2010-07-08 08:53:09
這應該是被接受的答案。 – Loudenvier 2017-09-29 13:15:20
轉到您的表單中的事件選項卡,並在點擊位置雙擊它,然後在代碼位置寫入Environment.Exit(0);
很好的例子,非常接近我所需要的。 – Fedearne 2010-07-08 08:54:01
確保您的退出碼是正整數,否則命令提示符處的%ERRORLEVEL%會返回0代表負碼。所以在示例中,exitCode應該是uint,ExitApplication也應該是uint。 – 2011-12-20 07:22:16
謝謝你,正是我需要的。 – VivekDev 2016-08-02 08:51:09