Debugging Interfaces
This section describes the unmanaged interfaces that handle the debugging of a program that is executing in the common language runtime (CLR).
In This Section
ICLRDataEnumMemoryRegions Interface
Provides a method to enumerate regions of memory that are specified by callers.ICLRDataEnumMemoryRegionsCallback Interface
Provides a callback method for EnumMemoryRegions to report to the debugger, the result of an attempt to enumerate a specified region of memory.ICLRDataTarget Interface
Provides methods for interaction with a target CLR process.ICLRDataTarget2 Interface
A subclass of ICLRDataTarget that is used by the data access services layer to manipulate virtual memory regions in the target process.ICLRMetadataLocator Interface
Interface used by the data access services layer to locate metadata of assemblies in a target process.ICorDebug Interface
Provides methods that allow developers to debug applications in the CLR environment.ICorDebugAppDomain Interface
Provides methods for debugging application domains.ICorDebugAppDomain2 Interface
Provides methods to work with arrays, pointers, function pointers, and ByRef types. This interface is an extension of the ICorDebugAppDomain interface.ICorDebugAppDomainEnum Interface
Provides a method that returns a specified number of ICorDebugAppDomain values starting at the next location in the enumeration.ICorDebugArrayValue Interface
A subclass of ICorDebugHeapValue that represents a single-dimensional or multi-dimensional array.ICorDebugAssembly Interface
Represents an assembly.ICorDebugAssembly2 Interface
Represents an assembly. This interface is an extension of the ICorDebugAssembly interface.ICorDebugAssemblyEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugAssembly arrays.ICorDebugBoxValue Interface
A subclass of ICorDebugHeapValue that represents a boxed value class object.ICorDebugBreakpoint Interface
Represents a breakpoint in a function or a watch point on a value.ICorDebugBreakpointEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugBreakpoint arrays.ICorDebugChain Interface
Represents a segment of a physical or logical call stack.ICorDebugChainEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugChain arrays.ICorDebugClass Interface
Represents a type, which can be either basic or complex (that is, user-defined). If the type is generic, ICorDebugClass represents the uninstantiated generic type.ICorDebugClass2 Interface
Represents a generic class or a class with a method parameter of type Type. This interface extends ICorDebugClass.ICorDebugCode Interface
Represents a segment of either Microsoft intermediate language (MSIL) code or native code.ICorDebugCode2 Interface
Provides methods that extend the capabilities of ICorDebugCode.ICorDebugCodeEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugCode arrays.ICorDebugContext Interface
Represents a context object. This interface has not been implemented yet.ICorDebugController Interface
Represents a scope, either a Process or an AppDomain, in which code execution context can be controlled.ICorDebugEditAndContinueErrorInfo Interface
Obsolete. Do not use this interface.ICorDebugEditAndContinueSnapshot Interface
Obsolete. Do not use this interface.ICorDebugEnum Interface
Serves as the abstract base interface for debugging enumerators.ICorDebugErrorInfoEnum Interface
Obsolete. Do not use this interface.ICorDebugEval Interface
Provides methods to enable the debugger to execute code within the context of the code being debugged.ICorDebugEval2 Interface
Extends ICorDebugEval to provide support for generic types.ICorDebugFrame Interface
Represents a frame on the current stack.ICorDebugFrameEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugFrame arrays.ICorDebugFunction Interface
Represents a managed function or method.ICorDebugFunction2 Interface
Logically extends ICorDebugFunction to provide support for Just My Code step-through debugging.ICorDebugFunctionBreakpoint Interface
Extends ICorDebugBreakpoint to support breakpoints within functions.ICorDebugGenericValue Interface
A subclass of ICorDebugValue that applies to all values. This interface provides Get and Set methods for the value.ICorDebugHandleValue Interface
A subclass of ICorDebugReferenceValue that represents a reference value to which the debugger has created a handle for garbage collection.ICorDebugHeapValue Interface
A subclass of ICorDebugValue that represents an object that has been collected by the CLR garbage collector.ICorDebugHeapValue2 Interface
An extension of ICorDebugHeapValue that provides support for runtime handles.ICorDebugILFrame Interface
Represents a stack frame of MSIL code.ICorDebugILFrame2 Interface
A logical extension of ICorDebugILFrame.ICorDebugInternalFrame Interface
Identifies frame types for the debugger.ICorDebugManagedCallback Interface
Provides methods to process debugger callbacks.ICorDebugManagedCallback2 Interface
Provides methods to support debugger exception handling and managed debugging assistants (MDAs). ICorDebugManagedCallback2 is a logical extension of ICorDebugManagedCallback.ICorDebugMDA Interface
Represents a managed debugging assistant (MDA) message.ICorDebugModule Interface
Represents a CLR module, which is either an executable or a dynamic-link library (DLL).ICorDebugModule2 Interface
Serves as a logical extension to ICorDebugModule.ICorDebugModuleBreakpoint Interface
Extends ICorDebugBreakpoint to provide access to specific modules.ICorDebugModuleEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugModule arrays.ICorDebugNativeFrame Interface
A specialized implementation of ICorDebugFrame used for native frames.ICorDebugObjectEnum Interface
Implements ICorDebugEnum methods, and enumerates arrays of objects by their relative virtual addresses (RVAs).ICorDebugObjectValue Interface
A subclass of ICorDebugValue that represents a value that contains an object.ICorDebugObjectValue2 Interface
Extends ICorDebugObjectValue to support inheritance and overrides.ICorDebugProcess Interface
Represents a process that is executing managed code.ICorDebugProcess2 Interface
A logical extension of ICorDebugProcess.ICorDebugProcessEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugProcess arrays.ICorDebugRegisterSet Interface
Represents the set of registers available on the machine that is currently executing code.ICorDebugRegisterSet2 Interface
Extends the capabilities of ICorDebugRegisterSet for hardware platforms that have more than 64 registers.ICorDebugReferenceValue Interface
A subclass of ICorDebugValue that supports reference types.ICorDebugStepper Interface
Represents a step in code execution that is performed by a debugger, serves as an identifier between the issuance and completion of a command, and provides a way to cancel a step.ICorDebugStepper2 Interface
Provides support for Just My Code (JMC) debugging.ICorDebugStepperEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugStepper arrays.ICorDebugStringValue Interface
A subclass of ICorDebugHeapValue that applies to string values.ICorDebugThread Interface
Represents a thread in a process. The lifetime of an ICorDebugThread instance is the same as the lifetime of the thread it represents.ICorDebugThread2 Interface
Serves as a logical extension to ICorDebugThread.ICorDebugThreadEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugThread arrays.ICorDebugType Interface
Represents a type, which can be either basic or complex (that is, user-defined). If the type is generic, ICorDebugType represents the instantiated generic type.ICorDebugTypeEnum Interface
Implements ICorDebugEnum methods, and enumerates ICorDebugType arrays.ICorDebugUnmanagedCallback Interface
Provides notification of native events that are not directly related to the CLR.ICorDebugValue Interface
Represents a read or write value in the process being debugged.ICorDebugValue2 Interface
Extends ICorDebugValue to provide support for ICorDebugType.ICorDebugValueBreakpoint Interface
Extends ICorDebugBreakpoint to provide access to specific values.ICorDebugValueEnum Interface
Implements IcorDebugEnum methods, and enumerates ICorDebugValue arrays.ICorPublish Interface
Serves as the general interface for the publishing processes.ICorPublishAppDomain Interface
Represents and provides information about an application domain.ICorPublishAppDomainEnum Interface
Provides methods that traverse a collection of ICorPublishAppDomain objects that currently exist within a process.ICorPublishEnum Interface
Serves as the abstract base for publishing enumerators.ICorPublishProcess Interface
Provides methods that access information about a process.ICorPublishProcessEnum Interface
Provides methods that traverse a collection of ICorPublishProcess objects.