FPO_DATA-Struktur (winnt.h)

Stellt das Stapelrahmenlayout für eine Funktion auf einem x86-Computer dar, wenn FPO-Optimierung (Frame Pointer Omission) verwendet wird. Die Struktur dient zum Bestimmen der Basis des Aufrufrahmens.

Syntax

typedef struct _FPO_DATA {
  DWORD ulOffStart;
  DWORD cbProcSize;
  DWORD cdwLocals;
  WORD  cdwParams;
  WORD  cbProlog : 8;
  WORD  cbRegs : 3;
  WORD  fHasSEH : 1;
  WORD  fUseBP : 1;
  WORD  reserved : 1;
  WORD  cbFrame : 2;
} FPO_DATA, *PFPO_DATA;

Member

ulOffStart

Der Offset des ersten Byte des Funktionscodes.

cbProcSize

Die Anzahl der Bytes in der Funktion.

cdwLocals

Die Anzahl der lokalen Variablen.

cdwParams

Die Größe der Parameter in DWORDs.

cbProlog

Die Anzahl der Bytes im Funktionsprologcode.

cbRegs

Die Anzahl der gespeicherten Register.

fHasSEH

Eine Variable, die angibt, ob die Funktion die strukturierte Ausnahmebehandlung verwendet.

fUseBP

Eine Variable, die angibt, ob das EBP-Register zugeordnet wurde.

reserved

Für die zukünftige Verwendung reserviert.

cbFrame

Eine Variable, die den Frametyp angibt.

Typ Bedeutung
FRAME_FPO
0
FPO-Frame
FRAME_NONFPO
3
Nicht-FPO-Frame
FRAME_TRAP
1
Trapframe
FRAME_TSS
2
TSS-Frame

Anforderungen

Anforderung Wert
Header winnt.h (windows.h einschließen)
Verteilbare Komponente DbgHelp.dll 5.1 oder höher

Weitere Informationen

FunctionTableAccessProc64

STACKFRAME64

SymFunctionTableAccess64