Metodo ICorProfilerInfo::GetModuleInfo
Dato l'ID di un modulo, restituisce il nome file del modulo e l'ID dell'assembly padre del modulo.
HRESULT GetModuleInfo(
[in] ModuleID moduleId,
[out] LPCBYTE *ppBaseLoadAddress,
[in] ULONG cchName,
[out] ULONG *pcchName,
[out, size_is(cchName), length_is(*pcchName)]
WCHAR szName[] ,
[out] AssemblyID *pAssemblyId);
Parametri
moduleId
[in] ID del modulo per il quale verranno recuperate le informazioni.ppBaseLoadAddress
[out] Indirizzo di base in corrispondenza del quale viene caricato il modulo.cchName
[in] Lunghezza del buffer di ritorno szName in caratteripcchName
[out] Puntatore al numero totale di caratteri del nome file del modulo restituito.szName
[out] Buffer per caratteri di tipo "wide" fornito dal chiamante. Quando il metodo restituisce il risultato, questo buffer contiene il nome file del modulo.pAssemblyId
[out] Puntatore all'ID dell'assembly padre del modulo.
Note
Per i moduli dinamici, il parametro szName è una stringa vuota e l'indirizzo di base è 0 (zero).
Sebbene sia possibile chiamare il metodo GetModuleInfo appena è disponibile l'ID del modulo, l'ID dell'assembly padre non sarà disponibile finché il profiler non riceverà il callback di ICorProfilerCallback::ModuleAttachedToAssembly.
Un volta completato GetModuleInfo, è necessario verificare che il buffer szName fosse abbastanza grande per contenere il nome file completo del modulo. A tal fine, confrontare il valore al quale punta pcchName con il valore del parametro cchName. Se pcchName punta a un valore maggiore di cchName, allocare un buffer szName più grande, aggiornare cchName con la nuova dimensione e chiamare nuovamente GetModuleInfo.
In alternativa, è possibile chiamare dapprima GetModuleInfo con un buffer szName di lunghezza zero per ottenere la dimensione del buffer corretta. È quindi possibile impostare la dimensione del buffer sul valore restituito nel parametro pcchName e chiamare nuovamente il metodo GetModuleInfo.
Per ulteriori informazioni su questi due approcci, vedere Buffer allocati dal chiamante.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: CorProf.idl, CorProf.h
Libreria: CorGuids.lib
Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0