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)