ICorProfilerInfo::SetILFunctionBody Method

Replaces the body of the specified function in the specified module.

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


Parameter Description


[in] The ID of the module in which the function resides.


[in] The token of the function for which to replace the body.


[in] The new header for the function.

The SetILFunctionBody method replaces the relative virtual address of the function in the metadata so that it points to the new function body, and adjusts any internal data structures as required.

The SetILFunctionBody method can be called on only those functions that have never been compiled by a just-in-time (JIT) compiler.

Use ICorProfilerInfo::GetILFunctionBodyAllocator Method to allocate space for the new method to ensure that the buffer is compatible.

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: CorProf.idl

Library: CorGuids.lib

.NET Framework Version: 2.0