共用方式為


例外狀況處理 (Visual Studio SDK)

 

如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件

以下說明時發生的例外狀況的處理程序。

例外狀況處理程序

  1. 當第一次擲回例外狀況,但它由偵錯程式中的例外狀況處理常式之前,偵錯引擎 (DE) 會將傳送IDebugExceptionEvent2來做為停止事件工作階段偵錯管理員 (SDM)。 IDebugExceptionEvent2如果只有例外狀況 (例外狀況 對話方塊中偵錯封裝中指定) 的設定會指定使用者想要停止的第一個出現的例外狀況通知會傳送。

  2. SDM 呼叫IDebugExceptionEvent2::GetException取得例外狀況的屬性。

  3. 偵錯封裝呼叫IDebugExceptionEvent2::CanPassToDebuggee來判斷哪些選項呈現給使用者。

  4. 偵錯封裝詢問使用者如何藉由開啟第一個出現的例外狀況 對話方塊中處理例外狀況。

  5. 如果使用者選擇繼續,會呼叫 SDM IDebugExceptionEvent2::CanPassToDebuggee

  6. 如果正在偵錯的程式有第二個可能的例外狀況處理常式,就會傳送 DEIDebugExceptionEvent2來做為 SDM EVENT_SYNC_STOP

  7. 偵錯封裝詢問使用者如何藉由開啟第一個出現的例外狀況 對話方塊中處理例外狀況。

  8. 偵錯封裝呼叫IDebugExceptionEvent2::CanPassToDebuggee來判斷哪些選項呈現給使用者。

  9. 偵錯封裝詢問使用者如何藉由開啟第二個可能的例外狀況 對話方塊中處理例外狀況。

  10. 方法會傳回 S_OK,如果呼叫IDebugExceptionEvent2::PassToDebuggee

另請參閱

呼叫偵錯工具事件