我的程序有事件onClosing
- 只是隐藏它。但我也需要实现关闭程序 - 尝试使用任务栏通知项目的上下文菜单。如何正确结束程序的所有过程
代码:
private void FormMainForm_FormClosing(object sender, FormClosingEventArgs e)
{
//canceling closing form
e.Cancel = true;
//hide form
this.WindowState = FormWindowState.Minimized;
}
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
//hide icon from tray
notifyIcon.Visible = false;
//get current process
Process proc = Process.GetCurrentProcess();
//kill it and close programm
proc.Kill();
}
而且还读了一点点,那kill()
终止所有工作,并“杀”的过程中,认为它可以是不正常的方式关闭PROGRAMM - 一些数据可以被摧毁或不能存储
也尝试使用proc.closeMainWindow();
和proc.Close()
- 但对程序没有影响 - 所有窗口关闭,但进程仍在运行。
问题:是.kill()
这是一个关闭程序的正确方法,或者它是另一种方法吗?
这是一样的,如果你从任务管理器杀死它。这是正确的方式吗? –
您是否使用前景线程?如果不使用'Application.Exit()' –
另一种选择:'Environment.Exit(0);'。 – Sam