ICorProfilerInfo2::GetClassFromTokenAndTypeArgs-Methode

Ruft die ClassID eines Typs mithilfe des angegebenen Metadatentokens und der ClassID-Werte beliebiger Typargumente ab.

Syntax

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

Parameter

moduleID
[in] Die ID des Moduls, in dem sich der Typ befindet.

typeDef
[in] Ein mdTypeDef-Metadatentoken, das auf den Typ verweist.

cTypeArgs
[in] Die Anzahl der Typparameter für den angegebenen Typ. Dieser Wert muss für nicht generische Typen 0 sein.

typeArgs
[in] Ein Array von ClassID-Werten, von denen jedes ein Argument des Typs ist. Der Wert von typeArgs kann NULL sein, wenn cTypeArgs auf 0 festgelegt ist.

pClassID
[out] Ein Zeiger auf die ClassID des angegebenen Typs.

Bemerkungen

Das Aufrufen der GetClassFromTokenAndTypeArgs-Methode mit mdTypeRef anstelle eines mdTypeDef-Metadatentokens kann zu unvorhersehbaren Ergebnissen führen. Aufrufer sollten mdTypeRef bei der Übergabe in mdTypeDef auflösen.

Wenn der Typ nicht bereits geladen ist, wird der Ladevorgang durch Aufrufen von GetClassFromTokenAndTypeArgs ausgelöst. In vielen Kontexten ist dies ein gefährlicher Vorgang. Beispielsweise kann das Aufrufen dieser Methode beim Laden von Modulen oder anderen Typen zu einer Endlosschleife führen, wenn die Runtime versucht, Elemente in Ringabhängigkeit zu laden.

Im Allgemeinen wird von der Verwendung von GetClassFromTokenAndTypeArgs abgeraten. Wenn Profiler an Ereignissen für einen bestimmten Typ interessiert sind, sollten sie ModuleID und mdTypeDef dieses Typs speichern und anhand von ICorProfilerInfo2::GetClassIDInfo2 überprüfen, ob eine bestimmte ClassID dem gewünschten Typ entspricht.

Anforderungen

Plattformen: Informationen finden Sie unter Systemanforderungen.

Header: CorProf.idl, CorProf.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: Seit 2.0 verfügbar.

Siehe auch