共用方式為


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] 型別所在之模組的 ID。

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

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

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

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

備註

mdTypeRef 而非 mdTypeDef 中繼資料語彙基元來呼叫 GetClassFromTokenAndTypeArgs 方法,可能會造成無法預期的結果;呼叫端在傳遞時應將 mdTypeRef 解析為 mdTypeDef

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

一般而言,不鼓勵使用 GetClassFromTokenAndTypeArgs。 如果分析工具對於特定型別的事件感興趣,它們應儲存該型別的 ModuleID 和 mdTypeDef,並且使用 ICorProfilerInfo2::GetClassIDInfo2 來檢查指定的 ClassID 是否為所要的型別。

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**CorProf.idl、CorProf.h

**程式庫:**CorGuids.lib

**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

請參閱

參考

ICorProfilerInfo 介面

ICorProfilerInfo2 介面