Поделиться через


Функция RtlUnwind2 (winnt.h)

Инициирует очистку кадров вызова процедуры.

Синтаксис

NTSYSAPI VOID RtlUnwind2(
  [in, optional] FRAME_POINTERS    TargetFrame,
  [in, optional] PVOID             TargetIp,
  [in, optional] PEXCEPTION_RECORD ExceptionRecord,
  [in]           PVOID             ReturnValue,
  [in]           PCONTEXT          ContextRecord
);

Параметры

[in, optional] TargetFrame

Указатель на кадр вызова, который является целевым объектом очистки. Если этот параметр имеет значение NULL, функция выполняет очистку выхода.

[in, optional] TargetIp

Адрес продолжения очистки. Этот параметр игнорируется, если TargetFrame имеет значение NULL.

[in, optional] ExceptionRecord

Указатель на структуру EXCEPTION_RECORD .

[in] ReturnValue

Значение, помещаемое в регистр возврата целочисленной функции перед продолжением выполнения.

[in] ContextRecord

Указатель на структуру CONTEXT , которая хранит контекст во время операции очистки.

Возвращаемое значение

Эта функция не возвращает значение.

Комментарии

Структура FRAME_POINTERS определяется следующим образом:

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

Требования

   
Целевая платформа Windows
Header winnt.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

КОНТЕКСТЕ

EXCEPTION_RECORD