ICorProfilerInfo::GetModuleInfo (Método)
A partir de un identificador de módulo, devuelve el nombre de archivo del módulo y el identificador del ensamblado primario del módulo.
Sintaxis
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);
Parámetros
moduleId
[in] Identificador del módulo para el que se recuperará la información.
ppBaseLoadAddress
[out] Dirección base en la que se carga el módulo.
cchName
[in] Longitud, en caracteres, del búfer de retorno szName
.
pcchName
[out] Puntero a la longitud total de caracteres del nombre de archivo del módulo que se devuelve.
szName
[out] Búfer de caracteres anchos proporcionado por el llamador. Cuando el método vuelve, este búfer contiene el nombre de archivo del módulo.
pAssemblyId
[out] Puntero al identificador del ensamblado primario del módulo.
Comentarios
Para los módulos dinámicos, el parámetro szName
es una cadena vacía y la dirección base es 0 (cero).
Aunque se puede llamar al método GetModuleInfo
tan pronto como el id. del módulo exista, el id. del ensamblado primario no estará disponible hasta que el generador de perfiles reciba la devolución de llamada del método ICorProfilerCallback::ModuleAttachedToAssembly.
Cuando GetModuleInfo
vuelve, debe comprobar que el búfer szName
era lo suficientemente grande como para contener el nombre de archivo completo del módulo. Para ello, compare el valor al que pcchName
apunta con el valor del parámetro cchName
. Si pcchName
apunta un valor mayor que cchName
, asigne un búfer szName
mayor, actualice cchName
con el nuevo tamaño de mayores dimensiones y vuelva a llamar a GetModuleInfo
.
También tiene la opción de llamar primero a GetModuleInfo
con un búfer szName
de longitud de cero para obtener el tamaño de búfer correcto. Después, puede establecer el tamaño del búfer en el valor devuelto en pcchName
y volver a llamar a GetModuleInfo
.
Requisitos
Plataformas: Vea Requisitos de sistema.
Encabezado: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
Versiones de .NET Framework: disponible a partir de la versión 2.0