Partager via


ICorProfilerInfo2::GetClassFromTokenAndTypeArgs, méthode

Obtient le ClassID d’un type à l’aide du jeton de métadonnées spécifié et des valeurs ClassID des arguments de type.

Syntaxe

HRESULT GetClassFromTokenAndTypeArgs(  
    [in] ModuleID moduleID,  
    [in] mdTypeDef typeDef,  
    [in] ULONG32 cTypeArgs,  
    [in, size_is(cTypeArgs)] ClassID typeArgs[],  
    [out] ClassID* pClassID);  

Paramètres

moduleID
[in] ID du module où se trouve le type.

typeDef
[in] Jeton de métadonnées mdTypeDef qui fait référence au type.

cTypeArgs
[in] Nombre de paramètres de type pour le type donné. Cette valeur doit être égale à zéro pour les types non génériques.

typeArgs
[in] Tableau de valeurs ClassID, chacune correspondant à un argument du type. La valeur de typeArgs peut être NULL si cTypeArgs est défini sur zéro.

pClassID
[out] Pointeur vers le ClassID du type spécifié.

Notes

L’appel de la méthode GetClassFromTokenAndTypeArgs avec un mdTypeRef au lieu d’un jeton de métadonnées mdTypeDef peut s’accompagner de résultats imprévisibles ; les appelants doivent résoudre mdTypeRef en mdTypeDef lors de sa transmission.

Si le type n’est pas déjà chargé, l’appel de GetClassFromTokenAndTypeArgs déclenche le chargement, ce qui peut se révéler dangereux dans de nombreux contextes. Par exemple, l’appel de cette méthode pendant le chargement de modules ou d’autres types peut entraîner une boucle infinie à mesure que le runtime tente de charger des éléments de manière circulaire.

En général, l’utilisation de GetClassFromTokenAndTypeArgs est déconseillée. Si les profileurs sont intéressés par les événements d’un type particulier, ils doivent stocker les éléments ModuleID et mdTypeDef de ce type, et utiliser ICorProfilerInfo2::GetClassIDInfo2 pour vérifier si un ClassID donné correspond au type souhaité.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : CorProf.idl, CorProf.h

Bibliothèque : CorGuids.lib

Versions de .NET Framework : Disponible depuis la version 2.0

Voir aussi