Kontrolowanie zdarzeń
Zdarzenia należy wysyłać podczas kontrolowanego wykonywania programu. Wszystkie zdarzenia są wysyłane przy użyciu interfejsu IDebugEvent2 i mają atrybuty, które wymagają zaimplementowania metody IDebugEvent2::GetAttributes.
Dodatkowe metody
Niektóre zdarzenia wymagają implementacji dodatkowych metod w następujący sposób:
Wysłanie interfejsu IDebugEngineCreateEvent2 podczas inicjowania aparatu debugowania (DE) wymaga zaimplementowania metody IDebugEngineCreateEvent2::GetEngine.
Kontrola wykonywania wymaga implementacji takich zdarzeń sterowania, jak interfejsy IDebugBreakEvent2 i IDebugStepCompleteEvent2. IDebugBreakEvent2 jest wymagany tylko w przypadku przerw asynchronicznych.
Przechodzenie do funkcji wymaga implementacji interfejsu IDebugStepCompleteEvent2 i jego metod.
Zdarzenia wynikające z punktów przerwania wymagają implementacji interfejsów IDebugBreakpointErrorEvent2, IDebugBreakpointEvent2i IDebugBreakpointBoundEvent2, a także metod IDebugBreakpointBoundEvent2::GetPendingBreakpoint i EnumBoundBreakpoints.
Ocena wyrażenia asynchronicznego wymaga zaimplementowania interfejsu IDebugExpressionEvaluationCompleteEvent2 oraz jego metod IDebugExpressionEvaluationCompleteEvent2::GetExpressioni GetResult.
Zdarzenia synchroniczne wymagają zaimplementowania metody IDebugEngine2::ContinueFromSynchronousEvent.
Aby aparat zapisywał dane wyjściowe w stylu ciągu, należy zaimplementować metodę IDebugOutputStringEvent2::GetString.