IDkmClrMetaDataProvider Interface

Definition

Interface implemented by the managed DM to obtain the metadata from a given module.

Implementations of this interface may restrict when they are called using a filter defined in their component configuration. The following properties may be used: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

public interface class IDkmClrMetaDataProvider
public interface class IDkmClrMetaDataProvider
__interface IDkmClrMetaDataProvider
public interface IDkmClrMetaDataProvider
type IDkmClrMetaDataProvider = interface
Public Interface IDkmClrMetaDataProvider

Methods

GetMetaDataImport(DkmClrModuleInstance)

Obtains the CLR metadata from a given module. See IMetaDataImport documentation in MSDN for more information on metadata.

NOTE: Callers must take great care when consuming this API from managed code. The IMetaDataImport implementation may hold a file handle to a debuggee file, and the file handle will only be closed when the COM reference count hits zero. So it must be manually released (Marshal.IsComObject + Marshal.ReleaseComObject) rather than waiting for the GC to detect that the object can be released. When testing, be sure that the debuggee file has at least 64KB of metadata, as the metadata reader will not keep the file locked for reading when dealing with small files.

Applies to