dbgeng.h header

This header is used by debugger. For more information, see:

  • Debugger dbgeng.h contains the following programming interfaces:

Classes

Title Description
DebugBaseEventCallbacks The DebugBaseEventCallbacks class provides a base implementation of the IDebugEventCallbacks interface.
DebugBaseEventCallbacksWide The DebugBaseEventCallbacksWide class provides a base implementation of the IDebugEventCallbacksWide interface.

Interfaces

Title Description
IDebugAdvanced IDebugAdvanced interface
IDebugAdvanced2 IDebugAdvanced2 interface
IDebugAdvanced3 IDebugAdvanced3 interface
IDebugAdvanced4 IDebugAdvanced4 interface
IDebugBreakpoint IDebugBreakpoint interface
IDebugBreakpoint2 IDebugBreakpoint2 interface
IDebugBreakpoint3 "IDebugBreakpoint3 interface"
IDebugClient IDebugClient interface
IDebugClient2 IDebugClient2 interface
IDebugClient3 IDebugClient3 interface
IDebugClient4 IDebugClient4 interface
IDebugClient5 IDebugClient5 interface
IDebugClient6 This interface supports event context callbacks.
IDebugClient7 The IDebugClient7 interface is reserved for internal use.
IDebugControl IDebugControl interface
IDebugControl2 IDebugControl2 interface
IDebugControl3 IDebugControl3 interface
IDebugControl4 IDebugControl4 interface
IDebugControl5 "."
IDebugControl6 "."
IDebugControl7 "."
IDebugDataSpaces IDebugDataSpaces interface
IDebugDataSpaces2 IDebugDataSpaces2 interface
IDebugDataSpaces3 IDebugDataSpaces3 interface
IDebugDataSpaces4 IDebugDataSpaces4 interface
IDebugEventCallbacks IDebugEventCallbacks interface
IDebugEventCallbacksWide IDebugEventCallbacksWide interface
IDebugEventContextCallbacks This interface supports event context callbacks and replaces the use of the IDebugClient::SetEventCallbacks method.
IDebugInputCallbacks IDebugInputCallbacks interface
IDebugOutputCallbacks IDebugOutputCallbacks interface
IDebugOutputCallbacks2 The IDebugOutputCallbacks2 interface allows clients to receive full debugger markup language (DML) content for presentation.
IDebugOutputCallbacksWide IDebugOutputCallbacksWide interface
IDebugOutputStream Supports the debug output stream.
IDebugPlmClient This interface supports Process Lifecycle Management (PLM) for the debug client.
IDebugPlmClient2 This interface supports Process Lifecycle Management (PLM) for the debug client.
IDebugPlmClient3 This interface supports Process Lifecycle Management (PLM) for the debug client.
IDebugRegisters IDebugRegisters interface
IDebugRegisters2 IDebugRegisters2 interface
IDebugSymbolGroup IDebugSymbolGroup interface
IDebugSymbolGroup2 IDebugSymbolGroup2 interface
IDebugSymbols IDebugSymbols interface
IDebugSymbols2 IDebugSymbols2 interface
IDebugSymbols3 IDebugSymbols3 interface
IDebugSymbols4 This interface supports determination of the symbol of an inline frame.
IDebugSymbols5 This interface supports using index values for the current frame.
IDebugSystemObjects IDebugSystemObjects interface
IDebugSystemObjects2 IDebugSystemObjects2 interface
IDebugSystemObjects3 IDebugSystemObjects3 interface
IDebugSystemObjects4 IDebugSystemObjects4 interface

Functions

Title Description
DebugCommandException Specifies a debug command exception.
DebugConnect The DebugConnect and DebugConnectWide functions create a new client object and return an interface pointer to it. The client object will be connected to a remote host.
DebugConnectWide The DebugConnect and DebugConnectWide functions create a new client object and return an interface pointer to it. The client object will be connected to a remote host.
DebugCreate The DebugCreate function creates a new client object and returns an interface pointer to it.
DebugCreateEx The DebugCreateEx function creates a new client object and returns an interface pointer to it.

Callback functions

Title Description
PDEBUG_EXTENSION_CALL Callback functions of the type PDEBUG_EXTENSION_CALL are called by the engine to execute extension commands. You can give these functions any name you want, as long as it contains no uppercase letters.
PDEBUG_EXTENSION_CANUNLOAD The DebugExtensionCanUnload callback function checks whether a debug extension can unload after the uninitialization call.
PDEBUG_EXTENSION_INITIALIZE The DebugExtensionInitialize callback function is called by the engine after loading a DbgEng extension DLL.C++ CALLBACK* PDEBUG_EXTENSION_INITIALIZE DebugExtensionInitialize;
PDEBUG_EXTENSION_KNOWN_STRUCT The engine calls the KnownStructOutput callback function to request information about structures that the extension DLL can format for printing. The engine calls this function for the following reasons.
PDEBUG_EXTENSION_KNOWN_STRUCT_EX The DebugExtensionKnownStructEx callback function is called by extensions in order to dump structures that are well known to them.
PDEBUG_EXTENSION_NOTIFY The engine calls the DebugExtensionNotify callback function to inform the extension DLL when a session changes its active or accessible status.C++ CALLBACK* PDEBUG_EXTENSION_NOTIFY DebugExtensionNotify;
PDEBUG_EXTENSION_PROVIDE_VALUE The DebugExtensionProvideValue callback function sets pseudo-register values.C++ CALLBACK* PDEBUG_EXTENSION_PROVIDE_VALUE DebugExtensionProvideValue;
PDEBUG_EXTENSION_QUERY_VALUE_NAMES The DebugExtensionQueryValueNames callback function recovers pseudo-register values.C++ CALLBACK* PDEBUG_EXTENSION_QUERY_VALUE_NAMES DebugExtensionQueryValueNames;
PDEBUG_EXTENSION_UNINITIALIZE The DebugExtensionUninitialize callback function is called by the engine to uninitialize the DbgEng extension DLL before it is unloaded.
PDEBUG_EXTENSION_UNLOAD The DebugExtensionUnload callback function unloads the debug extension.
PDEBUG_STACK_PROVIDER_BEGINTHREADSTACKRECONSTRUCTION The BeginThreadStackReconstruction callback function causes debugger to pass the stream to the dump stack provider prior to thread enumeration.
PDEBUG_STACK_PROVIDER_ENDTHREADSTACKRECONSTRUCTION The EndThreadStackReconstruction callback function may be called after stack reconstruction to clean up state.
PDEBUG_STACK_PROVIDER_FREESTACKSYMFRAMES The FreeStackSymFrames callback function frees memory from a stack provider.
PDEBUG_STACK_PROVIDER_RECONSTRUCTSTACK The ReconstructStack callback function queries dump stream provider on a per-thread basis.

Structures

Title Description
DEBUG_BREAKPOINT_PARAMETERS The DEBUG_BREAKPOINT_PARAMETERS structure contains most of the parameters for describing a breakpoint.
DEBUG_CACHED_SYMBOL_INFO Defines information about cached symbols.
DEBUG_CLIENT_CONTEXT Contains a debug client constant to provide to the IDebugClient7::SetClientContext method.
DEBUG_CREATE_PROCESS_OPTIONS The DEBUG_CREATE_PROCESS_OPTIONS structure specifies the process creation options to use when creating a new process.
DEBUG_EVENT_CONTEXT Defines context information about an event.
DEBUG_EXCEPTION_FILTER_PARAMETERS The DEBUG_EXCEPTION_FILTER_PARAMETERS structure contains the parameters for an exception filter.
DEBUG_GET_TEXT_COMPLETIONS_IN Defines information about text completions to get.
DEBUG_GET_TEXT_COMPLETIONS_OUT Defines information about text completions to get.
DEBUG_HANDLE_DATA_BASIC The DEBUG_HANDLE_DATA_BASIC structure contains handle-related information about a system object.
DEBUG_LAST_EVENT_INFO_BREAKPOINT Describes the breakpoint of the last event.
DEBUG_LAST_EVENT_INFO_EXCEPTION Describes the exception of the last event.
DEBUG_LAST_EVENT_INFO_EXIT_PROCESS Describes the exit process of the last event.
DEBUG_LAST_EVENT_INFO_EXIT_THREAD Describes the exit thread of the last event.
DEBUG_LAST_EVENT_INFO_LOAD_MODULE Describes the load module of the last event.
DEBUG_LAST_EVENT_INFO_SYSTEM_ERROR Describes the system error of the last event.
DEBUG_LAST_EVENT_INFO_UNLOAD_MODULE Describes the unload module of the last event.
DEBUG_MODULE_AND_ID The DEBUG_MODULE_AND_ID structure describes a symbol within a module.
DEBUG_MODULE_PARAMETERS The DEBUG_MODULE_PARAMETERS structure contains most of the parameters for describing a module.
DEBUG_OFFSET_REGION Defines a debug offset region.
DEBUG_PROCESSOR_IDENTIFICATION_ALL This union contains relevant information for a processor the supported processors.
DEBUG_PROCESSOR_IDENTIFICATION_ALPHA Identifies an Alpha processor.
DEBUG_PROCESSOR_IDENTIFICATION_AMD64 Identifies an AMD64 processor.
DEBUG_PROCESSOR_IDENTIFICATION_ARM Identifies an ARM processor.
DEBUG_PROCESSOR_IDENTIFICATION_ARM64 Identifies an ARM64 processor.
DEBUG_PROCESSOR_IDENTIFICATION_IA64 Identifies an Intel Itanium architecture (IA64) processor.
DEBUG_PROCESSOR_IDENTIFICATION_X86 Identifies an x86 processor.
DEBUG_READ_USER_MINIDUMP_STREAM Describes a user minidump to read.
DEBUG_REGISTER_DESCRIPTION The DEBUG_REGISTER_DESCRIPTION structure is returned by GetDescription to describe a processor's register.
DEBUG_SPECIFIC_FILTER_PARAMETERS The DEBUG_SPECIFIC_FILTER_PARAMETERS structure contains the parameters for a specific event filter.
DEBUG_STACK_FRAME The DEBUG_STACK_FRAME structure describes a stack frame and the address of the current instruction for the stack frame.
DEBUG_STACK_FRAME_EX The DEBUG_STACK_FRAME_EX structure describes a stack frame and the address of the current instruction for the stack frame.
DEBUG_SYMBOL_ENTRY The DEBUG_SYMBOL_ENTRY structure describes a symbol in a symbol group.
DEBUG_SYMBOL_PARAMETERS The DEBUG_SYMBOL_PARAMETERS structure describes a symbol in a symbol group.
DEBUG_SYMBOL_SOURCE_ENTRY The DEBUG_SYMBOL_SOURCE_ENTRY structure describes a section of the source code and a corresponding region of the target's memory.
DEBUG_THREAD_BASIC_INFORMATION The DEBUG_THREAD_BASIC_INFORMATION structure describes an operating system thread.
DEBUG_VALUE The DEBUG_VALUE structure holds register and expression values.
INLINE_FRAME_CONTEXT Describes inline frame context.
STACK_SRC_INFO Defines stack source information.
STACK_SYM_FRAME_INFO Defines stack source information for an extended stack frame.
SYMBOL_INFO_EX The SYMBOL_INFO_EX structure describes the extended line symbol information.