当应用程序关闭时关闭整个windows应用程序窗体的最佳方式是什么?显然,在我退出应用程序后,应用程序仍在运行。使用c在winforms中关闭整个窗体#
回答
继巴厘岛的评论,请使用:在http://msdn.microsoft.com/en-us/library/ms157894.aspx(重点煤矿)
Application.Exit()
详情:
exit方法停止所有线程所有正在运行的消息循环和 关闭的所有窗口应用。此方法不会 必然强制应用程序退出。 Exit方法通常是在消息循环中调用的 ,并强制Run返回。 要仅退出当前线程的消息循环,请调用ExitThread。
如果在应用程序的主窗体关闭后应用程序仍在运行,那么您的某些线程就会挂起,而不是完成它的工作。你应该确定它,并确保它优雅地关闭。完成后,当您关闭主窗体时,您的应用程序过程应该很好地消失,而无需带出武器并拍摄它。
+1对'带出武器并射击它'多数民众赞成真棒:) –
不是关闭程序最漂亮的方式,但如果您只想完全结束整个过程,只需运行Process.Kill()
就可以了。如果有任何未完成的线程正在运行,最好先优雅地关闭它们。如果你不关心什么也没有完成,这将这样的伎俩:
foreach (Process p in Process.GetProcesses())
{
if (p.ProcessName.Contains("appname"))
{
p.Kill();
}
}
理想情况下,你应该找出为什么你的应用仍在游逛按Fredkrik的答案。但是,如果你想强制你的应用程序退出,Environment.Exit是你想要的。 Application.Exit只能退出当前的消息泵(尽管承认你只会继续使用,除非你已经多次调用了Application.Run)。
从docco:
Environment.Exit方法 终止此过程,并给出了底层操作系统指定的退出代码。
Application.Exit方法 通知所有消息泵必须终止,然后关闭该消息后,所有应用程序窗口已被处理。
- 1. 的WinForms:子窗体关闭父窗体
- 2. 如何在WinForms中使用Show()时关闭窗口C#
- 3. 从winforms应用程序的子窗体中关闭主窗口
- 4. C#winforms - 更新关闭窗体中的Toolstripstatuslabel
- 5. 关闭窗体关闭SQL连接(C#)
- 6. 窗体关闭/显示 - C#
- 7. C#ArgumentOutOfRangeException关闭窗体时
- 8. 如何在Windows窗体中关闭多个窗体应用
- 9. C# - 如何关闭主窗体和子窗体(只有当主窗体关闭时子窗口才会关闭)
- 10. 从另一个窗体关闭窗体
- 11. 在C中使用方法关闭特定窗体#
- 12. 当另一个窗体关闭时关闭窗体
- 13. 关闭C#窗体应用程序
- 14. C#Windows窗体应用程序关闭
- 15. 如何关闭C#中的窗体#
- 16. C#中打开窗体并关闭它
- 17. 窗体关闭事件在c#
- 18. 打开一个新窗体,关闭旧窗体C#
- 19. C#窗体窗体应用程序,从子窗体关闭父窗体
- 20. Winforms中关闭一个不相关的.NET窗体内的另一种形式
- 21. 正确地在C中打开和关闭多个窗体窗体#
- 22. 奇怪:WinForms窗体在按下按钮后自动关闭
- 23. 如何使用VBA在Access中关闭单个窗体实例?
- 24. 从C#中的前景窗体关闭背景窗体wpf
- 25. 如何在c#.NET中打开一个关闭的窗体?
- 26. 在WinForms中关闭其模态子窗体后,哪个事件发生在父窗体上?
- 27. 窗体关闭事件在多个窗口窗体应用程序使用可视c#
- 28. 用锌关闭窗体
- 29. C#winforms窗体显示cmd
- 30. C#/ WPF:在不关闭整个项目的情况下关闭当前窗口
Application.Exit() –
Application.Exit()显示一些错误 –
什么错误?...... –