IDebugEventCallback2::Event
Sendet Benachrichtigung über Debugereignisse.
Syntax
int Event(
IDebugEngine2 pEngine,
IDebugProcess2 pProcess,
IDebugProgram2 pProgram,
IDebugThread2 pThread,
IDebugEvent2 pEvent,
ref Guid riidEvent,
uint dwAttrib
);
Parameter
pEngine
[in] Ein IDebugEngine2 -Objekt, das das Debugmodul (DE) darstellt, das dieses Ereignis sendet. Zum Ausfüllen dieses Parameters ist eine DE erforderlich.
pProcess
[in] Ein IDebugProcess2 -Objekt, das den Prozess darstellt, in dem das Ereignis auftritt. Dieser Parameter wird vom Sitzungsdebug-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 Nullwert.
pThread
[in] Ein IDebugThread2 -Objekt, das den Thread darstellt, in dem dieses Ereignis auftritt. Für das Beenden von Ereignissen kann dieser Parameter kein NULL-Wert sein, da der Stapelframe aus diesem Parameter abgerufen wird.
pEvent
[in] Ein IDebugEvent2 -Objekt, das das Debugereignis darstellt.
riidEvent
[in] GUID, die angibt, welche Ereignisschnittstelle vom pEvent
Parameter abgerufen werden soll.
dwAttrib
[in] Eine Kombination von Flags aus der EVENTATTRIBUTES-Aufzählung .
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 von der GetAttributes-Methode zurückgegebenen Wert übereinstimmen, der für das ereignisobjekt aufgerufen wird, das pEvent
im Parameter übergeben wird.
Alle Debugereignisse werden asynchron bereitgestellt, 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, nur, ob das Ereignis empfangen wurde. Tatsächlich wurde das Ereignis unter den meisten Umständen nicht verarbeitet, wenn diese Methode zurückgegeben wird.