Adjuntar y desasociar a un programa
La asociación del depurador requiere enviar la secuencia correcta de métodos y eventos con los atributos adecuados.
Secuencia de métodos y eventos
El administrador de depuración de sesión (SDM) llama al método OnAttach .
En función del modelo de proceso del motor de depuración (DE), el
IDebugProgramNodeAttach2::OnAttach
método devuelve uno de los métodos siguientes, que determina lo que sucede a continuación.Si
S_FALSE
se devuelve, el motor de depuración se ha asociado correctamente al programa. De lo contrario, se llama al método Attach para completar el proceso de asociación.Si
S_OK
se devuelve, el DE se cargará en el mismo proceso que el SDM. SdM realiza las siguientes tareas:Llama a GetEngineInfo para obtener la información del motor del DE.
Crea conjuntamente el DE.
Llama a Attach.
El DE envía un IDebugEngineCreateEvent2 al SDM con un
EVENT_SYNC
atributo .El DE envía un IDebugProgramCreateEvent2 al SDM con un
EVENT_SYNC
atributo .El DE envía un IDebugLoadCompleteEvent2 al SDM con un
EVENT_SYNC_STOP
atributo .La desasociación de un programa es un proceso sencillo y en dos pasos, como se indica a continuación:
El SDM llama a Detach.
El DE envía un IDebugProgramDestroyEvent2.