Método ICorProfilerInfo::GetModuleInfo
Com um ID de módulo, devolve o nome de ficheiro do módulo e o ID da assemblagem principal do módulo.
Sintaxe
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] O ID do módulo para o qual as informações serão obtidas.
ppBaseLoadAddress
[fora] O endereço base no qual o módulo é carregado.
cchName
[in] O comprimento, em carateres, da szName
memória intermédia de retorno.
pcchName
[fora] Um ponteiro para o comprimento total do caráter do nome de ficheiro do módulo que é devolvido.
szName
[fora] Uma memória intermédia de carateres larga fornecida pelo autor da chamada. Quando o método é devolvido, esta memória intermédia contém o nome de ficheiro do módulo.
pAssemblyId
[fora] Um ponteiro para o ID da assemblagem principal do módulo.
Observações
Para módulos dinâmicos, o szName
parâmetro é uma cadeia vazia e o endereço base é 0 (zero).
Embora o GetModuleInfo
método possa ser chamado assim que o ID do módulo existir, o ID da assemblagem principal não estará disponível até que o gerador de perfis receba a chamada de retorno ICorProfilerCallback::ModuleAttachedToAssembly .
Quando GetModuleInfo
é devolvido, tem de verificar se a szName
memória intermédia era suficientemente grande para conter o nome de ficheiro completo do módulo. Para tal, compare o valor que pcchName
aponta com o valor do cchName
parâmetro . Se pcchName
apontar para um valor maior do cchName
que , aloque uma memória intermédia maior szName
, atualize cchName
com o novo tamanho maior e chame GetModuleInfo
novamente.
Em alternativa, pode chamar GetModuleInfo
primeiro com uma memória intermédia de comprimento szName
zero para obter o tamanho correto da memória intermédia. Em seguida, pode definir o tamanho da memória intermédia para o valor devolvido em pcchName
e chamar GetModuleInfo
novamente.
Requisitos
Plataformas: Veja Requisitos de Sistema.
Cabeçalho: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
.NET Framework Versões: Disponível desde 2.0