共用方式為


ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs 方法

使用指定的中繼資料語彙基元、包含的類別和任何型別引數的 ClassID 值,取得某函式的 FunctionID。

HRESULT GetFunctionFromTokenAndTypeArgs(
    [in] ModuleID moduleID,
    [in] mdMethodDef funcDef,
    [in] ClassID classId,
    [in] ULONG32 cTypeArgs,
    [in, size_is(cTypeArgs)] ClassID typeArgs[],
    [out] FunctionID* pFunctionID);

參數

  • moduleID
    [in] 函式所在之模組的 ID。

  • funcDef
    [in] 參考此函式的 mdMethodDef 中繼資料語彙基元。

  • classId
    [in] 此函式之包含類別的 ID。

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

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

  • pFunctionID
    [out] 指定之函式的 FunctionID 指標。

備註

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

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

一般而言,不鼓勵使用 GetFunctionFromTokenAndTypeArgs。 如果分析工具對於特定函式的事件感興趣,它們應儲存該函式的 ModuleIDmdMethodDef,並且使用 ICorProfilerInfo2::GetFunctionInfo2 來檢查指定的FunctionID 是否為所要的函式。

需求

**平台:**請參閱 .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 介面