ICorProfilerInfo3::GetFunctionEnter3Info Method

Updated: July 2011

Provides the stack frame and argument information of the function that is being reported to the profiler by the FunctionEnter3WithInfo function. This method can be called only during the FunctionEnter3WithInfo callback.

HRESULT GetFunctionEnter3Info(
            [in]  FunctionID functionId, 
            [in]  COR_PRF_ELT_INFO eltInfo,
            [out] COR_PRF_FRAME_INFO *pFrameInfo,
            [in, out] ULONG *pcbArgumentInfo,
            [out, size_is(*pcbArgumentInfo)]
                  COR_PRF_FUNCTION_ARGUMENT_INFO *pArgumentInfo);

Parameters

  • functionId
    [in] The FunctionID of the function that is being entered.

  • eltInfo
    [in] An opaque handle that represents information about a given stack frame. The profiler should provide the same eltInfo that it was given by the FunctionEnter3WithInfo function.

  • pFrameInfo
    [out] An opaque handle that represents generics information about a given stack frame. This handle is valid only during the FunctionEnter3WithInfo callback in which the profiler called the GetFunctionEnter3Info method.

  • pcbArgumentInfo
    [in, out] A pointer to the total size, in bytes, of the COR_PRF_FUNCTION_ARGUMENT_INFO structure (plus any additional COR_PRF_FUNCTION_ARGUMENT_RANGE structures for the argument ranges that the pArgumentInfo parameter points to). If the specified size is not enough, ERROR_INSUFFICIENT_BUFFER is returned and the expected size is stored in pcbArgumentInfo. To call GetFunctionEnter3Info just to retrieve the expected value for *pcbArgumentInfo, set *pcbArgumentInfo=0 and pArgumentInfo=NULL.

  • pArgumentInfo
    [out] A pointer to a COR_PRF_FUNCTION_ARGUMENT_INFO structure that describes the locations of the function's arguments in memory, in left-to-right order.

Remarks

The profiler must allocate sufficient space for the COR_PRF_FUNCTION_ARGUMENT_INFO structure of the function that is being inspected, and must indicate the size in the pcbArgumentInfo parameter.

Requirements

Platforms: See .NET Framework System Requirements.

Header: CorProf.idl, CorProf.h

Library: CorGuids.lib

.NET Framework Versions: 4

See Also

Reference

FunctionEnter3WithInfo

FunctionLeave3WithInfo

FunctionTailcall3WithInfo

ICorProfilerInfo3 Interface

Concepts

Profiling and Runtime Notification IDs

Other Resources

Profiling Interfaces

Profiling (Unmanaged API Reference)

Change History

Date

History

Reason

July 2011

Corrected the pcbArgumentInfo parameter description.

Customer feedback.