我使用VSTS2008+Windows3.5+ C#开发.Net窗体应用程序。我的困惑是,Application.Exit似乎没有强制应用程序终止?如果不是,我应该调用哪个方法来终止应用程序?
编辑1:
通常main方法是这样的,如何在不调用Environment.Exit的情况下优雅地退出Main函数?
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
try
{
Application.Run(new Form1());
}
catch (Exception ex)
{
Console.WriteLine (ex.Message);
}
}先谢谢你,乔治
发布于 2009-06-29 08:21:39
Application.Exit实际上只是非常轻柔地询问消息循环。
如果你想让你的应用程序退出,最好的方法是优雅地退出Main,然后干净利落地关闭任何额外的非后台线程。
如果你想变得粗鲁...Environment.Exit还是Environment.FailFast?注这是很苛刻的--和杀死你自己的Process差不多。
发布于 2013-05-16 00:27:54
尝试以下操作:
Process.GetCurrentProcess().Kill();Environment.Exit不能与Winforms一起工作,而Environment.FailFast抛出了自己的异常。
发布于 2009-06-29 08:29:24
如果您的应用程序在您调用Application.Exit时没有正常退出,那么(显然)会有一些因素阻止它这样做。这可以是FormClosing事件中的窗体设置e.Cancel = true,也可以是仍在运行的不是后台线程的线程。我建议你仔细研究到底是什么让你的进程保持活力,并以一种好的方式结束它。这也会让你的应用程序很好地关闭。
通常,在winforms应用程序中,关闭主窗体就足够了。
https://stackoverflow.com/questions/1057151
复制相似问题