Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
En fonction d’un ID de module, retourne le nom de fichier du module, l’ID de l’assembly parent du module et un masque de bits qui décrit les propriétés du module.
Syntax
HRESULT GetModuleInfo2(
[in] ModuleID moduleId,
[out] LPCBYTE *ppBaseLoadAddress,
[in] ULONG cchName,
[out] ULONG *pcchName,
[out, annotation("__out_ecount_part(cchName, *pcchName)")]
WCHAR szName[] ,
[out] AssemblyID *pAssemblyId);
[out] DWORD *pdwModuleFlags);
Parameters
moduleId [in] ID du module pour lequel les informations seront récupérées.
ppBaseLoadAddress [out] Adresse de base à laquelle le module est chargé.
cchName [in] Longueur, en caractères, de la szName mémoire tampon de retour.
pcchName [out] Pointeur vers la longueur totale du caractère du nom de fichier du module retourné.
szName [out] Mémoire tampon de caractères large fournie par l’appelant. Lorsque la méthode est retournée, cette mémoire tampon contient le nom de fichier du module.
pAssemblyId [out] Pointeur vers l’ID de l’assembly parent du module.
pdwModuleFlags [out] Masque de bits des valeurs de l’énumération COR_PRF_MODULE_FLAGS qui spécifie les propriétés du module.
Remarks
Pour les modules dynamiques, le szName paramètre est le nom des métadonnées du module et l’adresse de base est 0 (zéro). Le nom des métadonnées est la valeur de la colonne Name de la table Module à l’intérieur des métadonnées. Cela est également exposé en tant que Module.ScopeName propriété au code managé, et en tant que szName paramètre de la méthode IMetaDataImport ::GetScopeProps au code client de métadonnées non managés.
Bien que la GetModuleInfo2 méthode soit appelée dès que l’ID du module existe, l’ID de l’assembly parent n’est pas disponible tant que le profileur ne reçoit pas le rappel ICorProfilerCallback ::ModuleAttachedToAssembly .
Lorsque GetModuleInfo2 vous retournez, vous devez vérifier que la szName mémoire tampon était suffisamment grande pour contenir le nom de fichier complet du module. Pour ce faire, comparez la valeur qui pcchName pointe vers la valeur du cchName paramètre. Si pcchName elle pointe vers une valeur supérieure cchNameà , allouez une mémoire tampon plus grande szName , mettez à jour cchName avec la nouvelle, plus grande taille et appelez GetModuleInfo2 à nouveau.
Vous pouvez également d’abord appeler GetModuleInfo2 avec une mémoire tampon de longueur szName nulle pour obtenir la taille correcte de la mémoire tampon. Vous pouvez ensuite définir la taille de la mémoire tampon sur la valeur retournée pcchName et appeler GetModuleInfo2 à nouveau.
Requirements
Plateformes : Consultez Configuration requise.
En-tête: CorProf.idl, CorProf.h
Library: CorGuids.lib
Versions du .NET Framework : Disponible depuis 4