我正在使用 CLR 分析 API 并尝试使用 GetFunctionEnter3Info 函数从 COR_PRF_ELT_INFO 获取参数信息 (COR_PRF_FUNCTION_ARGUMENT_INFO)。
下面是我的代码。似乎 GetFunctionEnter3Info 函数没有设置 pArgumentInfo 的值。它始终具有空值。但是,该函数返回 S_OK,这是成功的。
我可能会遗漏一些东西。我应该如何从 COR_PRF_ELT_INFO 获得 COR_PRF_FUNCTION_ARGUMENT_INFO ?
PROFILER_STUB EnterStub(FunctionIDOrClientID functionId, COR_PRF_ELT_INFO eltInfo)
{
COR_PRF_FRAME_INFO *pFrameInfo = 0;
ULONG *pcbArgumentInfo = 0;
COR_PRF_FUNCTION_ARGUMENT_INFO *pArgumentInfo = NULL;
corProfilerInfo->GetFunctionEnter3Info(functionId.functionID, eltInfo, pFrameInfo, pcbArgumentInfo, pArgumentInfo);
if(pArgumentInfo) {
//
}
}