ICorProfilerInfo::GetILFunctionBody メソッド

Microsoft Intermediate Language (MSIL) コード内の、ヘッダー位置から始まるメソッド本体へのポインターを取得します。

HRESULT GetILFunctionBody(
    [in]  ModuleID    moduleId,
    [in]  mdMethodDef methodId,
    [out] LPCBYTE     *ppMethodHeader,
    [out] ULONG       *pcbMethodSize);

パラメーター

  • moduleId
    [入力] 関数が存在するモジュールの ID。

  • methodId
    [入力] メソッドのメタデータ トークン。

  • ppMethodHeader
    [出力] メソッドのヘッダーへのポインター。

  • pcbMethodSize
    [出力] メソッドのサイズを指定する整数。

解説

メソッドは、そのメソッドが置かれているモジュールによってスコープが設定されます。 GetILFunctionBody メソッドは共通言語ランタイム (CLR: Common Language Runtime) によって読み込まれる前に MSIL コードにアクセスするツールを提供するように設計されているため、メソッドのメタデータ トークンを使用して目的のインスタンスを検索します。

methodId が MSIL コードのないメソッド (抽象メソッド、プラットフォーム呼び出し (PInvoke) メソッドなど) を指す場合、GetILFunctionBody が CORPROF_E_FUNCTION_NOT_IL HRESULT を返すことがあります。

必要条件

プラットフォーム: 「.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 インターフェイス