Metodo ICorDebugModule3::CreateReaderForInMemorySymbols
Crea un lettore di simboli di debug per un modulo dinamico.
Sintassi
HRESULT CreateReaderForInMemorySymbols (
[in] REFIID riid,
[out][iid_is(riid)] void ** ppObj
Parametri
riid [in] IID dell'interfaccia COM da restituire. In genere, si tratta di un'interfaccia ISymUnmanagedReader.
ppObj [out] Puntatore a un puntatore all'interfaccia restituita.
Valore restituito
S_OK Creato correttamente il lettore.
CORDBG_E_MODULE_LOADED_FROM_DISK Il modulo non è un modulo in memoria o dinamico.
CORDBG_E_SYMBOLS_NOT_AVAILABLE Simboli non sono stati forniti dall'applicazione o non sono ancora disponibili.
E_FAIL (o altri codici restituiti di E_) Impossibile creare il lettore.
Osservazioni:
Questo metodo può essere usato anche per creare un oggetto lettore di simboli per i moduli in memoria (non dinamici), ma solo dopo la prima disponibilità dei simboli (indicato dal callback del metodo UpdateModuleSymbols).
Questo metodo restituisce una nuova istanza del lettore ogni volta che viene chiamata, ad esempio CComPtrBase::CoCreateInstance. Pertanto, il debugger deve memorizzare nella cache il risultato e richiedere una nuova istanza solo quando i dati sottostanti possono essere stati modificati, ovvero quando viene ricevuto un callback del metodo LoadClass.
I moduli dinamici non dispongono di simboli disponibili fino al caricamento del primo tipo (come indicato dal callback del metodo LoadClass).
Requisiti
Piattaforme: vedere Requisiti di sistema.
Intestazione: CorDebug.idl, CorDebug.h
Libreria: CorGuids.lib
Versioni di .NET Framework: 4.5, 4, 3.5 SP1