ICorDebugModule3::CreateReaderForInMemorySymbols Method
Creates a debug symbol reader for a dynamic module.
HRESULT CreateReaderForInMemorySymbols (
[in] REFIID riid,
[out][iid_is(riid)] void ** ppObj
Parameters
riid
[in] The IID of the COM interface to return. Typically, this is an ISymUnmanagedReader Interface.ppObj
[out] Pointer to a pointer to the returned interface.
Return Value
S_OK
Successfully created the reader.CORDBG_E_MODULE_LOADED_FROM_DISK
The module is not an in-memory or dynamic module.CORDBG_E_SYMBOLS_NOT_AVAILABLE
Symbols have not been supplied by the application or are not yet available.E_FAIL (or other E_ return codes)
Unable to create the reader.
Remarks
This method can also be used to create a symbol reader object for in-memory (non-dynamic) modules, but only after the symbols are first available (indicated by the ICorDebugManagedCallback::UpdateModuleSymbols Method callback).
This method returns a new reader instance every time it is called (like CComPtrBase::CoCreateInstance). Therefore, the debugger should cache the result and request a new instance only when the underlying data may have changed (that is, when a ICorDebugManagedCallback::LoadClass Method callback is received).
Dynamic modules do not have any symbols available until the first type has been loaded (as indicated by the ICorDebugManagedCallback::LoadClass Method callback).
Requirements
Platforms: See .NET Framework System Requirements.
Header: CorDebug.idl
Library: : CorGuids.lib
.NET Framework Versions: 3.5 SP1
See Also
Reference
ICorDebugRemoteTarget Interface
Other Resources
Change History
Date |
History |
Reason |
---|---|---|
Added topic. |
Information enhancement. |