ICorProfilerInfo::SetILFunctionBody 方法

替换指定模块中的指定函数体。

HRESULT SetILFunctionBody(
    [in] ModuleID    moduleId,
    [in] mdMethodDef methodid,
    [in] LPCBYTE     pbNewILMethodHeader);

参数

  • moduleId
    [in] 函数所驻留的模块的 ID。

  • methodid
    [in] 要为其替换体的函数的标记。

  • pbNewILMethodHeader
    [in] 函数的新头文件。

备注

SetILFunctionBody 方法替换元数据中函数的相对虚拟地址,使其指向新函数体,并根据需要调整任何内部数据结构。

只能对从未由实时 (JIT) 编译器编译过的函数调用 SetILFunctionBody 方法。

使用 ICorProfilerInfo::GetILFunctionBodyAllocator 方法为新方法分配空间,以确保缓冲区是兼容的。

要求

**平台:**请参见 .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 接口