Метод ICorProfilerInfo::GetModuleInfo

Возвращает имя файла модуля и идентификатор его родительской сборки для указанного идентификатора модуля.

Синтаксис

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);  

Параметры

moduleId
[in] Идентификатор модуля, для которого будут извлекаться сведения.

ppBaseLoadAddress
[out] Базовый адрес, по которому модуль был загружен.

cchName
[in] Длина буфера возврата szName в символах.

pcchName
[out] Указатель на общую длину возвращаемого имени файла модуля в символах.

szName
[out] Буфер расширенных символов, предоставленный вызывающим объектом. При возврате метода этот буфер содержит имя файла модуля.

pAssemblyId
[out] Указатель на идентификатор родительской сборки модуля.

Комментарии

Для динамических модулей параметр szName является пустой строкой, а базовый адрес равен 0 (нулю).

GetModuleInfo Хотя метод может вызываться сразу после появления идентификатора модуля, идентификатор родительской сборки будет недоступен, пока профилировщик не получит обратный вызов ICorProfilerCallback::ModuleAttachedToAssembly.

После возврата метода GetModuleInfo необходимо убедиться, что буфер szName был достаточно велик, чтобы вместить в себя полное имя файла модуля. Для этого сравните значение, на которое указывает параметр pcchName, со значением параметра cchName. Если параметр pcchName указывает на значение, превышающее значение cchName, выделите буфер szName большего размера, обновите параметр cchName, задав новый, больший размер, и вызовите метод GetModuleInfo снова.

Кроме того, сначала можно вызвать метод GetModuleInfo с буфером szName нулевой длины для получения правильного размера буфера. Затем можно задать размер буфера равным значению, возвращенному в параметре pcchName, и вызвать метод GetModuleInfo снова.

Требования

Платформы: см. раздел Требования к системе.

Заголовок: CorProf.idl, CorProf.h

Библиотека: CorGuids.lib

версии платформа .NET Framework: доступно с версии 2.0

См. также раздел