Expand Minimize

Debugging Interfaces

This section describes the unmanaged interfaces that handle the debugging of a program that is executing in the common language runtime (CLR).

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.

ICLRDataTarget3 Interface

A subclass of ICLRDataTarget2 that provides access to exception information.

ICLRDebugging Interface

Provides methods that handle loading and unloading modules for debugging.

ICLRDebuggingLibraryProvider Interface

Includes the ICLRDebuggingLibraryProvider::ProvideLibrary Method method, which gets a library provider callback interface that allows common language runtime version-specific debugging libraries to be located and loaded on demand.

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.

ICorDebugAppDomain3 Interface

Provides methods to work with the Windows Runtime types in an application domain. This interface is an extension of the ICorDebugAppDomain and ICorDebugAppDomain2 interfaces.

ICorDebugAppDomain4 Interface

Logically extends the ICorDebugAppDomain interface to get a managed object from a COM callable wrapper.

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.

ICorDebugAssembly3 Interface

Logically extends the ICorDebugAssembly interface to provide support for container assemblies and their contained assemblies. Available on .NET Native only.

ICorDebugAssemblyEnum Interface

Implements ICorDebugEnum methods, and enumerates ICorDebugAssembly arrays.

ICorDebugBlockingObjectEnum Interface

Provides an enumerator for a list of CorDebugBlockingObject structures.

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.

ICorDebugCode3 Interface

Provides a method that extends ICorDebugCode and ICorDebugCode2 to provide information about a managed return value.

ICorDebugCodeEnum Interface

Implements ICorDebugEnum methods, and enumerates ICorDebugCode arrays.

ICorDebugComObjectValue Interface

Provides methods to retrieve cached interface objects.

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.

ICorDebugDataTarget Interface

Provides a callback interface that provides access to a particular target process.

ICorDebugDataTarget2 Interface

Logically extends the ICorDebugDataTarget interface. Available on .NET Native only.

ICorDebugDataTarget3 Interface

Logically extends the ICorDebugDataTarget interface to provide information about loaded modules. Available on .NET Native only.

ICorDebugDebugEvent Interface

Defines the base interface from which all ICorDebug debug events derive. Available on .NET Native only.

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.

ICorDebugExceptionDebugEvent Interface

Extends the ICorDebugDebugEvent interface to support exception events. Available on .NET Native only.

ICorDebugExceptionObjectCallStackEnum Interface

Provides an enumerator for call stack information that is embedded in an exception object.

ICorDebugExceptionObjectValue Interface

Extends the ICorDebugObjectValue interface to provide stack trace information from a managed exception object.

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.

ICorDebugFunction3 Interface

Logically extends the ICorDebugFunction interface to provide access to code from a ReJIT request.

ICorDebugFunctionBreakpoint Interface

Extends ICorDebugBreakpoint to support breakpoints within functions.

ICorDebugGCReferenceEnum Interface

Provides an enumerator for objects that will be garbage-collected.

ICorDebugGenericValue Interface

A subclass of ICorDebugValue that applies to all values. This interface provides Get and Set methods for the value.

ICorDebugGuidToTypeEnum Interface

Provides an enumerator for an object that maps GUIDs and their corresponding ICorDebugType objects.

ICorDebugHandleValue Interface

A subclass of ICorDebugReferenceValue that represents a reference value to which the debugger has created a handle for garbage collection.

ICorDebugHeapEnum Interface

Provides an enumerator for objects on the managed heap.

ICorDebugHeapSegmentEnum Interface

Provides an enumerator for the memory regions of the managed heap.

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.

ICorDebugHeapValue3 Interface

Exposes the monitor lock properties of objects.

ICorDebugILCode Interface

Represents a segment of intermediate language (IL) code.

ICorDebugILCode2 Interface

Logically extends the ICorDebugILCode interface to provide methods that return the token for a function's local variable signature, and that map a profiler's instrumented intermediate language (IL) offsets to original method IL offsets.

ICorDebugILFrame Interface

Represents a stack frame of MSIL code.

ICorDebugILFrame2 Interface

A logical extension of ICorDebugILFrame.

ICorDebugILFrame3 Interface

Provides a method that encapsulates the return value of a function.

ICorDebugILFrame4 Interface

Provides methods that allow you to access the local variables and code in a stack frame of intermediate language (IL) code. A parameter specifies whether the debugger has access to variables and code added in profiler ReJIT instrumentation.

ICorDebugInstanceFieldSymbol Interface

Represents the debug symbol information for an instance field. Available on .NET Native only.

ICorDebugInternalFrame Interface

Identifies frame types for the debugger.

ICorDebugInternalFrame2 Interface

Provides information about internal frames, including stack address and position in relation to ICorDebugFrame objects.

ICorDebugLoadedModule Interface

Provides information about a loaded module. Available on .NET Native only.

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.

ICorDebugManagedCallback3 Interface

Provides a callback method that indicates that an enabled custom debugger notification has been raised.

ICorDebugMDA Interface

Represents a managed debugging assistant (MDA) message.

ICorDebugMemoryBuffer Interface

Represents an in-memory buffer. Available on .NET Native only.

ICorDebugMergedAssemblyRecord Interface

Provides information about a merged assembly. Available on .NET Native only.

ICorDebugMetaDataLocator Interface

Provides metadata information to the debugger.

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.

ICorDebugModule3 Interface

Creates a symbol reader for a dynamic module.

ICorDebugModuleBreakpoint Interface

Extends ICorDebugBreakpoint to provide access to specific modules.

ICorDebugModuleDebugEvent Interface

Extends the ICorDebugDebugEvent interface to support module-level events. Available on .NET Native only.

ICorDebugModuleEnum Interface

Implements ICorDebugEnum methods, and enumerates ICorDebugModule arrays.

ICorDebugMutableDataTarget Interface

Extends the ICorDebugDataTarget interface to support mutable data targets.

ICorDebugNativeFrame Interface

A specialized implementation of ICorDebugFrame used for native frames.

ICorDebugNativeFrame2 Interface

Provides methods that test for child and parent frame relationships.

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.

ICorDebugProcess3 Interface

Controls custom debugger notifications.

ICorDebugProcess5 Interface

Extends the ICorDebugProcess interface to support access to the managed heap, to provide information about garbage collection of managed objects, and to determine whether a debugger loads images from the application's local native image cache.

ICorDebugProcess6 Interface

Logically extends the ICorDebugProcess interface to enable features such as decoding managed debug events that are encoded in native exception debug events and virtual module splitting. Available on .NET Native only.

ICorDebugProcess7 Interface

Provides a method that configures the debugger to handle in-memory metadata updates in the target process.

ICorDebugProcessEnum Interface

Implements ICorDebugEnum methods, and enumerates ICorDebugProcess arrays.

ICorDebugReferenceValue Interface

A subclass of ICorDebugValue that supports reference types.

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.

ICorDebugRemote Interface

Provides the ability to launch or attach a managed debugger to a remote target process.

ICorDebugRemoteTarget Interface

Provides methods that enable you to debug Silverlight-based applications in the CLR environment.

ICorDebugRuntimeUnwindableFrame Interface

Provides support for unmanaged methods that require the common language runtime (CLR) to unwind a frame.

ICorDebugStackWalk Interface

Provides methods for getting the managed methods, or frames, on a thread’s stack.

ICorDebugStaticFieldSymbol Interface

Represents the debug symbol information for a static field. Available on .NET Native only.

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.

ICorDebugSymbolProvider Interface

Provides methods that can be used to retrieve debug symbol information. Available on .NET Native only.

ICorDebugSymbolProvider2 Interface

Logically extends the ICorDebugSymbolProvider interface to retrieve additional debug symbol information. Available on .NET Native only.

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.

ICorDebugThread3 Interface

Provides the entry point to the ICorDebugStackWalk and corresponding interfaces.

ICorDebugThread4 Interface

Provides thread blocking information.

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.

ICorDebugValue3 Interface

Extends the ICorDebugValue and ICorDebugValue2 interfaces to provide support for arrays that are larger than 2 GB.

ICorDebugValueBreakpoint Interface

Extends ICorDebugBreakpoint to provide access to specific values.

ICorDebugValueEnum Interface

Implements ICorDebugEnum methods, and enumerates ICorDebugValue arrays.

ICorDebugVariableSymbol Interface

Retrieves the debug symbol information for a variable. Available on .NET Native only.

ICorDebugVirtualUnwinder Interface

Provides methods to help in stack unwinding. Available on .NET Native only.

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.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft