Freigeben über


Starten des Debuggers

Beim Starten des Debuggers muss die richtige Abfolge von Methoden und Ereignissen mit ihren richtigen Attributen gesendet werden.

Sequenzen von Methoden und Ereignissen

  1. Der Sitzungsdebug-Manager (SDM) wird aufgerufen, indem das Menü " Debuggen " und dann " Start" ausgewählt wird. Weitere Informationen finden Sie unter Starten eines Programms.

  2. Die SDM ruft die OnAttach-Methode auf.

  3. Basierend auf dem De-Prozessmodell (Debug Engine) gibt die IDebugProgramNodeAttach2::OnAttach Methode eine der folgenden Methoden zurück, die bestimmt, was als Nächstes geschieht.

    Wenn S_FALSE zurückkehrt, muss die Debug-Engine (DE) im Prozess der virtuellen Maschine geladen werden.

    -oder-

    Wenn S_OK zurückkehrt, muss der DE in den Prozess des SDM geladen werden. Anschließend führt das SDM die folgenden Aufgaben aus:

    1. Ruft GetEngineInfo auf, um die Modulinformationen der DE abzurufen.

    2. Entwickelt die DE gemeinsam.

    3. Anrufe anfügen.

  4. Die DE sendet ein IDebugEngineCreateEvent2 mit einem EVENT_SYNC Attribut an das SDM.

  5. Die DE sendet ein IDebugProgramCreateEvent2 mit einem EVENT_SYNC-Attribut zum SDM.

  6. Die DE sendet ein IDebugThreadCreateEvent2 mit einem EVENT_SYNC Attribut an das SDM.

  7. Die DE sendet ein IDebugLoadCompleteEvent2 mit einem EVENT_SYNC Attribut an das SDM.

  8. Die DE sendet ein IDebugEntryPointEvent2 mit einem EVENT_SYNC Attribut an das SDM.