IDebugEventCallbacks::ChangeEngineState method (dbgeng.h)
The ChangeEngineState callback method is called by the engine when its state has changed.
Syntax
HRESULT ChangeEngineState(
[in] ULONG Flags,
[in] ULONG64 Argument
);
Parameters
[in] Flags
Specifies a bit-set indicating the type of changes that occurred in the engine's state. The following bit flags might be set:
Value | Description |
---|---|
DEBUG_CES_CURRENT_THREAD | The current thread has changed, which implies that the current target and current process might also have changed. |
DEBUG_CES_EFFECTIVE_PROCESSOR | The effective processor has changed. |
DEBUG_CES_BREAKPOINTS | One or more breakpoints have changed. |
DEBUG_CES_CODE_LEVEL | The code interpretation level has changed. |
DEBUG_CES_EXECUTION_STATUS | The execution status has changed. |
DEBUG_CES_ENGINE_OPTIONS | The engine options have changed. |
DEBUG_CES_LOG_FILE | The log file has been opened or closed. |
DEBUG_CES_RADIX | The default radix has changed. |
DEBUG_CES_EVENT_FILTERS | The event filters have changed. |
DEBUG_CES_PROCESS_OPTIONS | The process options for the current process have changed. |
DEBUG_CES_EXTENSIONS | Extension DLLs have been loaded or unloaded. (For more information, see Loading Debugger Extension DLLs.) |
DEBUG_CES_SYSTEMS | A target has been added or removed. |
DEBUG_CES_ASSEMBLY_OPTIONS | The assemble options have changed. |
DEBUG_CES_EXPRESSION_SYNTAX | The default expression syntax has changed. |
DEBUG_CES_TEXT_REPLACEMENTS | Text replacements have changed. |
[in] Argument
Provides additional information about the change to the engine's state. If more than one bit flag is set in the Flags parameter, the Argument parameter is not used. Otherwise, the interpretation of the value of Argument depends on the value of Flags:
DEBUG_CES_CURRENT_THREAD
The value of Argument is the current engine thread ID or--if there is no current thread--DEBUG_ANY_ID. For more information, see Threads and Processes.
DEBUG_CES_EFFECTIVE_PROCESSOR
The value of Argument is the type of the effective processor.
DEBUG_CES_BREAKPOINTS
The value of Argument is the breakpoint ID of the breakpoint that was changed or--if more than one breakpoint was changed--DEBUG_ANY_ID. For more information, see Breakpoints.
DEBUG_CES_CODE_LEVEL
The value of Argument is the code interpretation level.
DEBUG_CES_EXECUTION_STATUS
The value of Argument is the execution status (as described in the DEBUG_STATUS_XXX topic) possibly combined with the bit flag DEBUG_STATUS_INSIDE_WAIT. DEBUG_STATUS_INSIDE_WAIT is set when a WaitForEvent call is pending. For more information, see Debugging Session and Execution Model.
DEBUG_CES_ENGINE_OPTIONS
The value of Argument is the engine options.
DEBUG_CES_LOG_FILE
The value of Argument is TRUE if the log file was opened and FALSE if the log file was closed.
DEBUG_CES_RADIX
The value of Argument is the default radix.
DEBUG_CES_EVENT_FILTERS
The value of Argument is the index of the event filter that was changed or--if more than one event filter was changed--DEBUG_ANY_ID.
DEBUG_CES_PROCESS_OPTIONS
The value of Argument is the process options for the current process.
DEBUG_CES_EXTENSIONS
The value of Argument is zero.
DEBUG_CES_SYSTEMS
The value of Argument is the target ID of the target that was added or--if a target was removed--DEBUG_ANY_ID.
DEBUG_CES_ASSEMBLE_OPTIONS
The value of Argument is the assemble options.
DEBUG_CES_EXPRESSION_SYNTAX
The value of Argument is the default expression syntax.
DEBUG_CES_TEXT_REPLACEMENTS
The value of Argument is DEBUG_ANY_ID.
Return value
The return value is ignored by the engine unless it indicates a remote procedure call error; in this case the client, with which this IDebugEventCallbacks object is registered, is disabled.
Remarks
This method is only called by the engine if the DEBUG_EVENT_CHANGE_ENGINE_STATE flag is set in the mask returned by IDebugEventCallbacks::GetInterestMask.
For more information about handling events, see Monitoring Events.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | dbgeng.h (include Dbgeng.h) |