Отправка событий запуска после запуска
После подключения обработчика отладки к программе он отправляет ряд событий запуска обратно в сеанс отладки.
События запуска, отправленные обратно в сеанс отладки, включают:
Событие создания обработчика.
Событие создания программы.
События создания потока и загрузки модуля.
Полное событие загрузки, отправленное при загрузке и готовности кода к выполнению, но перед выполнением любого кода.
Примечание.
При продолжении этого события глобальные переменные инициализированы и запускаются подпрограммы запуска.
Возможные другие события создания потока и загрузки модуля.
Событие точки входа, указывающее, что программа достигла своей основной точки входа, например Main или
WinMain
. Это событие обычно не отправляется, если DE подключается к программе, которая уже запущена.Программное обеспечение DE сначала отправляет диспетчер отладки сеансов (SDM) интерфейс IDebugEngineCreateEvent2 , представляющий событие создания обработчика, за которым следует IDebugProgramCreateEvent2, представляющее событие создания программы.
Обычно за этими событиями следует одно или несколько событий создания потока IDebugThreadCreateEvent2 и события загрузки модуля IDebugModuleLoadEvent2 .
Когда код загружается и готов к выполнению, но перед выполнением любого кода DE отправляет SDM полного события загрузки IDebugLoadCompleteEvent2 . Наконец, если программа еще не запущена, DE отправляет событие точки входа IDebugEntryPointEvent2 , указывая, что программа достигла своей основной точки входа и готова к отладке.