다음을 통해 공유


RtlUnwindEx 함수(winnt.h)

프로시저 호출 프레임의 해제를 시작합니다.

구문

NTSYSAPI VOID RtlUnwindEx(
  [in, optional] PVOID                 TargetFrame,
  [in, optional] PVOID                 TargetIp,
  [in, optional] PEXCEPTION_RECORD     ExceptionRecord,
  [in]           PVOID                 ReturnValue,
  [in]           PCONTEXT              ContextRecord,
  [in, optional] PUNWIND_HISTORY_TABLE HistoryTable
);

매개 변수

[in, optional] TargetFrame

해제의 대상인 호출 프레임에 대한 포인터입니다. 이 매개 변수가 이 NULL면 함수는 종료 해제를 수행합니다.

[in, optional] TargetIp

해제의 연속 주소입니다. TargetFrame이 인 경우 이 매개 변수는 무시됩니다NULL.

[in, optional] ExceptionRecord

EXCEPTION_RECORD 구조체에 대한 포인터입니다.

[in] ReturnValue

실행을 계속하기 전에 정수 함수 반환 레지스터에 배치할 값입니다.

[in] ContextRecord

해제 작업 중에 컨텍스트를 저장하는 CONTEXT 구조체에 대한 포인터입니다.

[in, optional] HistoryTable

해제 기록 테이블에 대한 포인터입니다. 이 구조는 프로세서에 따라 다릅니다. 이 구조체에 대한 정의는 를 참조하세요 Winternl.h.

반환 값

이 함수는 값을 반환하지 않습니다.

설명

FRAME_POINTERS 구조체는 다음과 같이 정의됩니다.

typedef struct _FRAME_POINTERS {
    ULONGLONG MemoryStackFp;
    ULONGLONG BackingStoreFp;
} FRAME_POINTERS, *PFRAME_POINTERS;

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 winnt.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

CONTEXT

EXCEPTION_RECORD

VBS Enclave에서 사용할 수 있는 Vertdll API