IDebugEventCallbacks::ChangeEngineState-Methode (dbgeng.h)
Die ChangeEngineState-Rückrufmethode wird von der Engine aufgerufen, wenn sich ihr Zustand geändert hat.
Syntax
HRESULT ChangeEngineState(
[in] ULONG Flags,
[in] ULONG64 Argument
);
Parameter
[in] Flags
Gibt einen Bitsatz an, der den Typ der Änderungen angibt, die im Zustand der Engine aufgetreten sind. Die folgenden Bitflags können festgelegt werden:
Wert | BESCHREIBUNG |
---|---|
DEBUG_CES_CURRENT_THREAD | Der aktuelle Thread wurde geändert, was bedeutet, dass sich auch das aktuelle Ziel und der aktuelle Prozess geändert haben. |
DEBUG_CES_EFFECTIVE_PROCESSOR | Der effektive Prozessor hat sich geändert. |
DEBUG_CES_BREAKPOINTS | Mindestens ein Haltepunkt wurde geändert. |
DEBUG_CES_CODE_LEVEL | Die Codeinterpretationsebene wurde geändert. |
DEBUG_CES_EXECUTION_STATUS | Die Ausführung status wurde geändert. |
DEBUG_CES_ENGINE_OPTIONS | Die Optionen für die Engine wurden geändert. |
DEBUG_CES_LOG_FILE | Die Protokolldatei wurde geöffnet oder geschlossen. |
DEBUG_CES_RADIX | Der Standardradiix wurde geändert. |
DEBUG_CES_EVENT_FILTERS | Die Ereignisfilter wurden geändert. |
DEBUG_CES_PROCESS_OPTIONS | Die Prozessoptionen für den aktuellen Prozess wurden geändert. |
DEBUG_CES_EXTENSIONS | Erweiterungs-DLLs wurden geladen oder entladen. (Weitere Informationen finden Sie unter Laden von Debuggererweiterungs-DLLs.) |
DEBUG_CES_SYSTEMS | Ein Ziel wurde hinzugefügt oder entfernt. |
DEBUG_CES_ASSEMBLY_OPTIONS | Die Assemble-Optionen wurden geändert. |
DEBUG_CES_EXPRESSION_SYNTAX | Die Syntax des Standardausdrucks wurde geändert. |
DEBUG_CES_TEXT_REPLACEMENTS | Textersetzungen wurden geändert. |
[in] Argument
Stellt zusätzliche Informationen zur Änderung des Zustands der Engine bereit. Wenn im Flags-Parameter mehrere Bitflags festgelegt sind, wird der Argument-Parameter nicht verwendet. Andernfalls hängt die Interpretation des Werts von Argument vom Wert von Flags ab:
DEBUG_CES_CURRENT_THREAD
Der Wert von Argument ist die aktuelle Thread-ID der Engine oder - wenn kein aktueller Thread vorhanden ist - DEBUG_ANY_ID. Weitere Informationen finden Sie unter Threads und Prozesse.
DEBUG_CES_EFFECTIVE_PROCESSOR
Der Wert von Argument ist der Typ des effektiven Prozessors.
DEBUG_CES_BREAKPOINTS
Der Wert von Argument ist die Haltepunkt-ID des geänderten Haltepunkts oder - wenn mehrere Haltepunkte geändert wurden - DEBUG_ANY_ID. Weitere Informationen finden Sie unter Breakpoints (Haltepunkte).
DEBUG_CES_CODE_LEVEL
Der Wert von Argument ist die Codeinterpretationsebene.
DEBUG_CES_EXECUTION_STATUS
Der Wert von Argument ist die Ausführung status (wie im thema DEBUG_STATUS_XXX beschrieben), die möglicherweise mit dem Bitflag DEBUG_STATUS_INSIDE_WAIT kombiniert wird. DEBUG_STATUS_INSIDE_WAIT wird festgelegt, wenn ein WaitForEvent-Aufruf aussteht. Weitere Informationen finden Sie unter Debuggen von Sitzungs- und Ausführungsmodellen.
DEBUG_CES_ENGINE_OPTIONS
Der Wert von Argument ist die Engine-Optionen.
DEBUG_CES_LOG_FILE
Der Wert von Argument ist TRUE , wenn die Protokolldatei geöffnet wurde, und FALSE , wenn die Protokolldatei geschlossen wurde.
DEBUG_CES_RADIX
Der Wert von Argument ist der Standardradiix.
DEBUG_CES_EVENT_FILTERS
Der Wert von Argument ist der Index des Ereignisfilters, der geändert wurde, oder - wenn mehrere Ereignisfilter geändert wurden - DEBUG_ANY_ID.
DEBUG_CES_PROCESS_OPTIONS
Der Wert von Argument ist die Prozessoptionen für den aktuellen Prozess.
DEBUG_CES_EXTENSIONS
Der Wert von Argument ist null.
DEBUG_CES_SYSTEMS
Der Wert von Argument ist die Ziel-ID des hinzugefügten Ziels oder - wenn ein Ziel entfernt wurde - DEBUG_ANY_ID.
DEBUG_CES_ASSEMBLE_OPTIONS
Der Wert von Argument ist die Assemble-Optionen.
DEBUG_CES_EXPRESSION_SYNTAX
Der Wert von Argument ist die Standardausdruckssyntax.
DEBUG_CES_TEXT_REPLACEMENTS
Der Wert von Argument ist DEBUG_ANY_ID.
Rückgabewert
Der Rückgabewert wird von der Engine ignoriert, es sei denn, er weist auf einen Remoteprozeduraufruffehler hin. In diesem Fall ist der Client, bei dem dieses IDebugEventCallbacks-Objekt registriert ist, deaktiviert.
Hinweise
Diese Methode wird nur von der Engine aufgerufen, wenn das flag DEBUG_EVENT_CHANGE_ENGINE_STATE in der von IDebugEventCallbacks::GetInterestMask zurückgegebenen Maske festgelegt ist.
Weitere Informationen zur Behandlung von Ereignissen finden Sie unter Überwachen von Ereignissen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | dbgeng.h (dbgeng.h einschließen) |