启动调试程序

启动调试器需要使用正确的属性发送正确的方法和事件序列。

方法和事件的序列

  1. 通过选择 调试”菜单,然后选择“ 开始”来调用会话调试管理器(SDM)。 有关详细信息,请参阅 启动程序

  2. SDM 调用 OnAttach 方法。

  3. 该方法基于调试引擎 (DE) 进程模型 IDebugProgramNodeAttach2::OnAttach 返回以下方法之一,该方法确定接下来会发生什么。

    如果 S_FALSE 返回,调试引擎(DE)将在虚拟机过程中加载。

    -或-

    如果 S_OK 返回,则 DE 将在 SDM 的进程中加载。 然后,SDM 执行以下任务:

    1. 调用 GetEngineInfo 以获取 DE 的引擎信息。

    2. 共同创建 DE。

    3. 调用 附加

  4. DE 使用属性将 IDebugEngineCreateEvent2 发送到 SDMEVENT_SYNC

  5. DE 使用属性将 IDebugProgramCreateEvent2 发送到 SDMEVENT_SYNC

  6. DE 使用属性将 IDebugThreadCreateEvent2 发送到 SDMEVENT_SYNC

  7. DE 使用属性将 IDebugLoadCompleteEvent2 发送到 SDMEVENT_SYNC

  8. DE 使用属性将 IDebugEntryPointEvent2 发送到 SDMEVENT_SYNC