dbghelp.h) (IMAGEHLP_STACK_FRAME 结构

包含堆栈帧信息。 此结构与 SymSetContext 函数一起使用。

语法

typedef struct _IMAGEHLP_STACK_FRAME {
  ULONG64 InstructionOffset;
  ULONG64 ReturnOffset;
  ULONG64 FrameOffset;
  ULONG64 StackOffset;
  ULONG64 BackingStoreOffset;
  ULONG64 FuncTableEntry;
  ULONG64 Params[4];
  ULONG64 Reserved[5];
  BOOL    Virtual;
  ULONG   Reserved2;
} IMAGEHLP_STACK_FRAME, *PIMAGEHLP_STACK_FRAME;

成员

InstructionOffset

程序计数器。

x86: 程序计数器为 EIP。

Intel Itanium: 程序计数器是捆绑包地址和捆绑包中槽的插槽指示器 0、4 或 8 的组合。

x64: 程序计数器为 RIP。

ReturnOffset

寄信人地址。

FrameOffset

帧指针。

x86: 帧指针为 EBP。

Intel Itanium: 没有帧指针,但使用 AddrBStore

x64: 帧指针为 RBP。 AMD-64 并不总是使用此值。

StackOffset

堆栈指针。

x86: 堆栈指针为 ESP。

Intel Itanium: 堆栈指针为 SP。

x64: 堆栈指针为 RSP。

BackingStoreOffset

Intel Itanium: 后备存储地址。

FuncTableEntry

x86: FPO_DATA结构。 如果没有函数表条目,则此成员为 NULL

Params[4]

函数的可能参数。

Reserved[5]

此成员保留供系统使用。

Virtual

如果这是虚拟帧,则此成员为 TRUE。 否则,此成员为 FALSE

Reserved2

此成员保留供系统使用。

要求

   
标头 dbghelp.h
可再发行组件 DbgHelp.dll 5.1 或更高版本

请参阅

SymSetContext