发布于 4年前

C# 退出程序方法:Application.Exit和Environment.Eixt的区别

C#退出程序有两种方法:

  • System.Windows.Forms.Application.Exit()
  • System.Environment.Exit(exitCode)

System.Windows.Forms.Application.Exit()

System.Windows.Forms.Application.Exit() 会通知所有消息终止,等所有消息被处理后,它就会关闭所有的应用窗口。这个方法会停止所有线程上所有正在运行的消息循环,并关闭程序的所有窗口。但是它不会强制程序退出。 通常从消息循环内调用Exit方法,并强制Run返回。 如果是仅退出当前线程的消息循环,请调用ExitThread。

System.Environment.Exit(exitCode)

System.Environment.Exit(exitCode) 方法会终止进程,并向底层的操作系统发送exit code。调用这个方法需要有SecurityPermissionFlag.UnmanagedCode权限,否则会报SecurityException错。一般是在控制台应用程序中使用。

也就是说,Environment.Eixt要比Application.Exit要粗暴退出。

使用

If (System.Windows.Forms.Application.MessageLoop)<br></br>{<br></br>  System.Windows.Forms.Application.Exit()<br></br>}<br></br>Else<br></br>{<br></br>  System.Environment.Exit(1)<br></br>}
C#
©2020 edoou.com   京ICP备16001874号-3