ICorDebugModule Interface

Represents a common language runtime (CLR) module, which is either an executable file or a dynamic-link library (DLL).

interface ICorDebugModule : IUnknown {
    HRESULT _stdcall GetProcess([out] ICorDebugProcess** ppProcess);
    HRESULT _stdcall GetBaseAddress([out] uint64* pAddress);
    HRESULT _stdcall GetAssembly([out] ICorDebugAssembly** ppAssembly);
    HRESULT _stdcall GetName(
                    [in] unsigned int cchName, 
                    [out] unsigned int* pcchName, 
                    [out] ICorDebugModule szName);
    HRESULT _stdcall EnableJITDebugging(
                    [in] long bTrackJITInfo, 
                    [in] long bAllowJitOpts);
    HRESULT _stdcall EnableClassLoadCallbacks([in] long bClassLoadCallbacks);
    HRESULT _stdcall GetFunctionFromToken(
                    [in] unsigned int methodDef, 
                    [out] ICorDebugFunction** ppFunction);
    HRESULT _stdcall GetFunctionFromRVA(
                    [in] uint64 rva, 
                    [out] ICorDebugFunction** ppFunction);
    HRESULT _stdcall GetClassFromToken(
                    [in] unsigned int typeDef, 
                    [out] ICorDebugClass** ppClass);
    HRESULT _stdcall CreateBreakpoint([out] ICorDebugModuleBreakpoint** ppBreakpoint);
    HRESULT _stdcall GetEditAndContinueSnapshot([out] ICorDebugEditAndContinueSnapshot** ppEditAndContinueSnapshot);
    HRESULT _stdcall GetMetaDataInterface(
                    [in] GUID* riid, 
                    [out] IUnknown** ppObj);
    HRESULT _stdcall GetToken([out] unsigned int* pToken);
    HRESULT _stdcall IsDynamic([out] long* pDynamic);
    HRESULT _stdcall GetGlobalVariableValue(
                    [in] unsigned int fieldDef, 
                    [out] ICorDebugValue** ppValue);
    HRESULT _stdcall GetSize([out] unsigned int* pcBytes);
    HRESULT _stdcall IsInMemory([out] long* pInMemory);
};

Methods

Method

Description

ICorDebugModule::CreateBreakpoint Method

Not implemented.

ICorDebugModule::EnableClassLoadCallbacks Method

Determines whether the ICorDebugManagedCallback::LoadClass and ICorDebugManagedCallback::UnloadClass callbacks are called for this module.

ICorDebugModule::EnableJITDebugging Method

Determines whether the just-in-time (JIT) compiler preserves debugging information for methods within this module.

ICorDebugModule::GetAssembly Method

Gets the containing assembly for this module.

ICorDebugModule::GetBaseAddress Method

Gets the base address of the module.

ICorDebugModule::GetClassFromToken Method

Gets the ICorDebugClass from the metadata.

ICorDebugModule::GetEditAndContinueSnapshot Method

Deprecated.

ICorDebugModule::GetFunctionFromRVA Method

Not implemented.

ICorDebugModule::GetFunctionFromToken Method

Gets the function that is specified by the metadata token.

ICorDebugModule::GetGlobalVariableValue Method

Gets a value object for the specified global variable.

ICorDebugModule::GetMetaDataInterface Method

Gets a metadata interface pointer that can be used to examine the metadata for the module.

ICorDebugModule::GetName Method

Gets the file name of the module.

ICorDebugModule::GetProcess Method

Gets the containing process for this module.

ICorDebugModule::GetSize Method

Gets the size of the module in bytes.

ICorDebugModule::GetToken Method

Gets the token for the table entry for this module.

ICorDebugModule::IsDynamic Method

Indicates whether the module is dynamic.

ICorDebugModule::IsInMemory Method

Indicates whether this module exists only in memory.

Requirements

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: CorDebug.idl

Library: CorGuids.lib

.NET Framework Version: 2.0, 1.1, 1.0

See Also

Concepts

ICorDebug Interface

ICorDebugModule2 Interface

Debugging Interfaces