ICorProfilerInfo3::GetFunctionEnter3Info — Metoda
Udostępnia ramkę stosu i informacje o argumentach funkcji zgłaszanej do profilera przez funkcję FunctionEnter3WithInfo . Tę metodę można wywołać tylko podczas wywołania zwrotnego FunctionEnter3WithInfo
.
Składnia
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);
Parametry
functionId
[in] Funkcja FunctionID
, która jest wprowadzana.
eltInfo
[in] Nieprzezroczysty uchwyt reprezentujący informacje o danej ramce stosu. Profiler powinien podać to samo eltInfo
, co funkcja FunctionEnter3WithInfo .
pFrameInfo
[out] Nieprzezroczysty uchwyt reprezentujący ogólne informacje o danej ramce stosu. Ten uchwyt jest prawidłowy tylko podczas wywołania zwrotnego FunctionEnter3WithInfo
, w którym profiler nazwał metodę GetFunctionEnter3Info
.
pcbArgumentInfo
[in, out] Wskaźnik do całkowitego rozmiaru w bajtach struktury COR_PRF_FUNCTION_ARGUMENT_INFO (oraz wszelkie dodatkowe struktury COR_PRF_FUNCTION_ARGUMENT_RANGE dla zakresów argumentów wskazywanych przez pArgumentInfo
). Jeśli określony rozmiar jest niewystarczający, ERROR_INSUFFICIENT_BUFFER jest zwracany i oczekiwany rozmiar jest przechowywany w pliku pcbArgumentInfo
. Aby wywołać GetFunctionEnter3Info
metodę tylko w celu pobrania oczekiwanej wartości dla *pcbArgumentInfo
parametru , ustaw *pcbArgumentInfo
wartość =0 i pArgumentInfo
=NULL.
pArgumentInfo
[out] Wskaźnik do struktury COR_PRF_FUNCTION_ARGUMENT_INFO opisujący lokalizacje argumentów funkcji w pamięci w kolejności od lewej do prawej.
Uwagi
Profiler musi przydzielić wystarczającą ilość miejsca dla COR_PRF_FUNCTION_ARGUMENT_INFO
struktury sprawdzanej funkcji i musi wskazywać rozmiar w parametrze pcbArgumentInfo
.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorProf.idl, CorProf.h
Biblioteki: CorGuids.lib
wersje .NET Framework: dostępne od 4