获取 ICorDebugStackWalk 对象中的当前帧。
HRESULT GetFrame([out] ICorDebugFrame ** pFrame);
参数
- pFrame
[in] 一个指向已创建帧对象的地址的指针,该对象表示堆栈中的当前帧。
返回值
此方法将返回以下特定的 HRESULT 以及用于指示方法失败的 HRESULT 错误。
HRESULT |
说明 |
---|---|
S_OK |
运行时成功返回了当前帧。 |
E_FAIL |
未能返回当前帧。 |
S_FALSE |
当前帧为本机堆栈帧。 |
E_INVALIDARG |
ppFrame 为 null。 |
CORDBG_E_PAST_END_OF_STACK |
帧指针已经位于堆栈的末尾;因此,无法访问其他帧。 |
备注
ICorDebugStackWalk 只返回实际堆栈帧。 使用 ICorDebugThread3::GetActiveInternalFrames 方法可返回内部帧。 (内部帧是运行时推入堆栈中的数据结构,可用于存储临时数据。)
要求
**平台:**请参见 .NET Framework 系统要求。
头文件: CorDebug.idl、CorDebug.h
**库:**CorGuids.lib
**.NET Framework 版本:**4