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.
Obtient le module parent et le jeton de métadonnées pour la définition générique ouverte de la classe spécifiée, la ClassID classe parente et l’argument ClassID de type, le cas échéant, de la classe.
Syntax
HRESULT GetClassIDInfo2(
[in] ClassID classId,
[out] ModuleID *pModuleId,
[out] mdTypeDef *pTypeDefToken,
[out] ClassID *pParentClassId,
[in] ULONG32 cNumTypeArgs,
[out] ULONG32 *pcNumTypeArgs,
[out] ClassID typeArgs[]);
Parameters
classId [in] ID de la classe pour laquelle les informations seront récupérées.
pModuleId [out] Pointeur vers l’ID du module parent pour la définition générique ouverte de la classe spécifiée.
pTypeDefToken [out] Pointeur vers le jeton de métadonnées pour la définition générique ouverte de la classe spécifiée.
pParentClassId [out] Pointeur vers l’ID de la classe parente.
cNumTypeArgs [in] Taille du typeArgs tableau.
pcNumTypeArgs [out] Pointeur vers le nombre total d’éléments disponibles.
typeArgs [out] Tableau de ClassID valeurs, chacun représentant l’ID d’un argument de type de la classe. Lorsque la méthode est retournée, typeArgs contient certaines ou toutes les valeurs disponibles ClassID .
Remarks
La GetClassIDInfo2 méthode est similaire à la méthode ICorProfilerInfo ::GetClassIDInfo , mais GetClassIDInfo2 obtient des informations supplémentaires sur un type générique.
Le code du profileur peut appeler ICorProfilerInfo ::GetModuleMetaData pour obtenir une interface de métadonnées pour un module donné. Le jeton de métadonnées retourné à l’emplacement référencé pTypeDefToken peut ensuite être utilisé pour accéder aux métadonnées de la classe.
Une fois GetClassIDInfo2 retourné, vous devez vérifier que la typeArgs mémoire tampon était suffisamment grande pour contenir toutes les ClassID valeurs. Pour ce faire, comparez la valeur qui pcNumTypeArgs pointe vers la valeur du cNumTypeArgs paramètre. Si pcNumTypeArgs elle pointe vers une valeur supérieure cNumTypeArgsà , allouez une mémoire tampon plus grande typeArgs , mettez à jour cNumTypeArgs avec la nouvelle, plus grande taille et appelez GetClassIDInfo2 à nouveau.
Vous pouvez également d’abord appeler GetClassIDInfo2 avec une mémoire tampon de longueur typeArgs nulle pour obtenir la taille correcte de la mémoire tampon. Vous pouvez ensuite définir la taille de la typeArgs mémoire tampon sur la valeur retournée pcNumTypeArgs et appeler GetClassIDInfo2 à nouveau.
Requirements
Plateformes : Consultez Configuration requise.
En-tête: CorProf.idl, CorProf.h
Library: CorGuids.lib
versions du .NET Framework : disponible depuis la version 2.0