IDebugEventCallback2::Event

Sendet eine Benachrichtigung über Debugereignisse.

Syntax

HRESULT Event( 
   IDebugEngine2*  pEngine,
   IDebugProcess2* pProcess,
   IDebugProgram2* pProgram,
   IDebugThread2*  pThread,
   IDebugEvent2*   pEvent,
   REFIID          riidEvent,
   DWORD           dwAttrib
);
int Event( 
   IDebugEngine2  pEngine,
   IDebugProcess2 pProcess,
   IDebugProgram2 pProgram,
   IDebugThread2  pThread,
   IDebugEvent2   pEvent,
   ref Guid       riidEvent,
   uint           dwAttrib
);

Parameter

pEngine
[in] Ein IDebugEngine2-Objekt, das die Debug-Engine (DE) darstellt, die dieses Ereignis sendet. Eine De-De ist erforderlich, um diesen Parameter auszufüllen.

pProcess
[in] Ein IDebugProcess2-Objekt, das den Prozess darstellt, in dem das Ereignis auftritt. Dieser Parameter wird vom Sitzungsdebugger-Manager (SDM) ausgefüllt. Eine DE übergibt immer einen NULL-Wert für diesen Parameter.

pProgram
[in] Ein IDebugProgram2-Objekt, das das Programm darstellt, in dem dieses Ereignis auftritt. Bei den meisten Ereignissen ist dieser Parameter kein NULL-Wert.

pThread
[in] Ein IDebugThread2-Objekt, das den Thread darstellt, in dem dieses Ereignis auftritt. Beim Beenden von Ereignissen kann dieser Parameter kein NULL-Wert sein, da der Stapelrahmen von diesem Parameter abgerufen wird.

pEvent
[in] Ein IDebugEvent2-Objekt, das das Debugereignis darstellt.

riidEvent
[in] GUID, die angibt, welche Ereignisschnittstelle aus dem Parameter abgerufen werden pEvent soll.

dwAttrib
[in] Eine Kombination von Flags aus der EVENTATTRIBUTES-Enumeration.

Rückgabewert

Wenn die Ausführung erfolgreich ist, wird S_OK, andernfalls ein Fehlercode zurückgegeben.

Hinweise

Beim Aufrufen dieser Methode muss der dwAttrib Parameter mit dem Wert übereinstimmen, der von der GetAttributes-Methode zurückgegeben wird, wie für das im -Parameter übergebene Ereignisobjekt pEvent aufgerufen.

Alle Debugereignisse werden asynchron gesendet, unabhängig davon, ob ein Ereignis selbst asynchron ist oder nicht. Wenn eine DE diese Methode aufruft, gibt der Rückgabewert nicht an, ob das Ereignis verarbeitet wurde, sondern nur, ob das Ereignis empfangen wurde. Tatsächlich wurde das Ereignis in den meisten Fällen nicht verarbeitet, wenn diese Methode zurückgegeben wird.

Siehe auch