附加及分離的程式
附加偵錯工具需要傳送正確的方法和事件,以適當的屬性順序。
方法和事件的順序
工作階段偵錯管理員 (SDM) 會呼叫IDebugProgramNodeAttach2::OnAttach方法。
根據 [偵錯引擎 (DE) 處理序模型中, IDebugProgramNodeAttach2::OnAttach方法會傳回下列方法之一,這麼做會決定接下來呢。
如果S_FALSE傳回時,偵錯引擎已成功地附加到程式。 否則, IDebugEngine2::Attach會呼叫方法來完成附加程序。
如果S_OK會傳回 DE 已載入相同 SDM 的處理序中。 SDM 會執行下列工作:
呼叫IDebugProgramNode2::GetEngineInfo以取得引擎的 DE 的資訊。
會同時建立 DE。
DE 傳送IDebugEngineCreateEvent2與 SDM 到EVENT_SYNC屬性。
DE 傳送IDebugProgramCreateEvent2與 SDM 到EVENT_SYNC屬性。
DE 傳送IDebugLoadCompleteEvent2與 SDM 到EVENT_SYNC_STOP屬性。
中斷連結的程式是一種簡單、 兩個步驟,如下所示:
SDM 呼叫IDebugProgram2::Detach。