以前是这样:在程序启动时的试用期检测中,如果检测失败返回False,然后在Sub Main()中用End结束程序
Public Sub Main()
'......
If CheckEDate() = False Then
End
End If
Application.Run(New frmMain)
End Sub
刚才想直接在检查失败后用Application.Exit()直接退出,测试了一下,发现这样不行
提示软件过期后执行了Application.Exit(),但是程序没有退出,而是继续运行。
查了一下MSDN,发现就是应该这样的:
Application.Exit 方法
通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。
备注
该方法停止在所有线程上运行的所有消息循环,并关闭应用程序的所有窗口。该方法并不强制应用程序退出。Exit 方法通常从一个消息循环内调用,该方法强制 Run 返回。若要只退出当前线程的某个消息循环,请调用 ExitThread。
警告 当调用 Application.Exit 方法以退出应用程序时,不引发 Form.Closed 和 Form.Closing 事件。如果在必须执行的其中一个事件中有验证代码,则在调用 Exit 方法之前,应分别为每个打开的窗体调用 Form.Close 方法。