ICorProfilerInfo2::GetClassFromTokenAndTypeArgs 方法

使用指定的中繼資料語彙基元和任何型別引數的 ClassID 值,來取得型別的 ClassID

語法

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

參數

moduleID
[in] 型別所在之模組的識別碼。

typeDef
[in] 參考型別的 mdTypeDef 中繼資料語彙基元。

cTypeArgs
[in] 指定型別的型別參數數目。 非泛型型別的這個值必須是零。

typeArgs
[in] ClassID 值的陣列,每個值都是型別的引數。 如果 cTypeArgs 設定為零,則 typeArgs 的值可以是 NULL。

pClassID
[out] 指定型別之 ClassID 的指標。

備註

使用 mdTypeRef 而非 mdTypeDef 中繼資料語彙基元呼叫 GetClassFromTokenAndTypeArgs 方法可能會產生無法預測的結果;呼叫端應該在傳遞 mdTypeRef 時將其解析為 mdTypeDef

如果型別尚未載入,則呼叫 GetClassFromTokenAndTypeArgs 會觸發載入,在許多內容中,這是危險的作業。 例如,在載入模組或其他型別期間呼叫此方法可能會導致無限迴圈,因為執行階段嘗試循環載入項目。

一般而言,不建議使用 GetClassFromTokenAndTypeArgs。 如果分析工具對特定型別的事件感興趣,其應該儲存該型別的 ModuleIDmdTypeDef,並使用 ICorProfilerInfo2::GetClassIDInfo2 來檢查指定的 ClassID 是否為所需型別的事件。

規格需求

平台:請參閱系統需求

標頭: CorProf.idl、CorProf.h

程式庫:CorGuids.lib

.NET Framework版本:自 2.0 起提供

另請參閱