退出后,托盘中的Windows窗体应用程序不会终止进程

时间:2013-12-08 19:57:08

标签: c# .net windows winforms

我正在使用从系统托盘运行的Windows窗体应用程序。在ContextMenuStrip中,我有一个Exit图标,它应该终止我的进程,但它没有。

我的流程留在任务管理器中。因此,如果我多次运行(并终止)应用程序,那么我在任务管理器中有几个进程,尽管它们都不再可用。

我退出应用程序的代码很简单:

void exitOnClick(object sender, System.EventArgs e)
{
   _notifyIcon.Visible = false;
    Application.Exit();
}

我已经使用调试器进行了检查 - 按下Exit键时会触发此代码。通知图标消失,但进程仍保留在任务管理器中。此外,如果任何获胜形式是开放的,它们将被关闭。

1 个答案:

答案 0 :(得分:2)

尝试使用Environment.Exit静态方法。这个方法:

  

...立即终止应用程序,即使其他线程是   运行

但最好找到一个仍在运行的代码,正如上面所说的那样。