20
2018
08

Close、Halt、terminate、ExitProcess的区别

Close:

1.只关闭本窗体

2.当Close是一个主窗体时,程序会退出。

3.Close会发生FormClose事件,FormCloseQuery事件

4.主窗体close以后程序就Application.Terminate了

5.子窗体close以后。没释放,还可以Show出来。

6.也是说主窗口的Close方法其实也是调用Application的Terminate来终止程序的。


Halt:

会发生FormDestory事件,用于强行终止应用程序的执行,返回操作系统(非正常退出方式)。


Application.terminate:

1.是关闭整个程序,包括所有窗体。

2.Application.Terminate以上三个事件都不会发生Application.Terminate就是程序结束了。


ExitProcess(0):

1.直接干净的终止程序。

2.MSDN资料

https://msdn.microsoft.com/library?url=/library/en-us/wcekernl/html/_wcesdk_win32_exitprocess.asp




« 上一篇下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。