Application.Exit()並不是在什麼地方都能終止程序的運行

以前是這樣:在程序啓動時的試用期檢測中,如果檢測失敗返回False,然後在Sub Main()中用End結束程序

    Public Sub Main()<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

        '......

        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.ClosedForm.Closing 事件。如果在必須執行的其中一個事件中有驗證代碼,則在調用 Exit 方法之前,應分別爲每個打開的窗體調用 Form.Close 方法。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章