Freigeben über


Senden der erforderlichen Ereignisse

Verwenden Sie dieses Verfahren zum Senden erforderlicher Ereignisse.

Prozess zum Senden erforderlicher Ereignisse

Die folgenden Ereignisse sind in dieser Reihenfolge erforderlich, wenn Sie ein Debugmodul (DE) erstellen und an ein Programm anfügen:

  1. Senden Sie ein IDebugEngineCreateEvent2-Ereignisobjekt an den Sitzungsdebug-Manager (SDM), wenn die DE für das Debuggen eines oder mehrerer Programme in einem Prozess initialisiert wird.

  2. Wenn das zu debuggende Programm angefügt ist, senden Sie ein IDebugProgramCreateEvent2-Ereignisobjekt an das SDM. Dieses Ereignis kann je nach Modulentwurf ein Stoppereignis sein.

  3. Wenn das Programm beim Starten des Prozesses angefügt ist, senden Sie ein IDebugThbugThreadCreateEvent2-Ereignisobjekt an das SDM, um die IDE des neuen Threads zu benachrichtigen. Dieses Ereignis kann je nach Modulentwurf ein Stoppereignis sein.

  4. Senden Sie ein IDebugLoadCompleteEvent2-Ereignisobjekt an das SDM, wenn das zu debuggende Programm geladen wurde oder wenn das Anfügen an das Programm abgeschlossen ist. Dieses Ereignis muss ein Stoppereignis sein.

  5. Wenn die zu debuggende Anwendung gestartet wird, senden Sie ein IDebugEntryPointEvent2-Ereignisobjekt an das SDM, wenn die erste Anweisung des Codes in der Laufzeitarchitektur ausgeführt werden soll. Dieses Ereignis ist immer ein Stoppereignis. Wenn Sie in die Debugsitzung wechseln, wird die IDE für dieses Ereignis beendet.

Hinweis

Viele Sprachen verwenden globale Initialisierer oder externe, vorkompilierte Funktionen (aus der CRT-Bibliothek oder _Main) am Anfang des Codes. Wenn die Sprache des Programms, das Sie debuggen, eine dieser Typen von Elementen vor dem anfänglichen Einstiegspunkt enthält, wird dieser Code ausgeführt, und das Einstiegspunktereignis wird gesendet, wenn der Benutzereinstiegspunkt, z. B. Standard oder WinMain, erreicht wird.

Siehe auch