Share via


Função RtlUnwindEx (winnt.h)

Inicia um desenrolamento de quadros de chamada de procedimento.

Sintaxe

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
);

Parâmetros

[in, optional] TargetFrame

Um ponteiro para o quadro de chamada que é o destino do desenrolamento. Se esse parâmetro for NULL, a função executará um desenrolamento de saída.

[in, optional] TargetIp

O endereço de continuação do desenrolamento. Esse parâmetro será ignorado se TargetFrame for NULL.

[in, optional] ExceptionRecord

Um ponteiro para uma estrutura EXCEPTION_RECORD .

[in] ReturnValue

Um valor a ser colocado no registro de retorno da função inteiro antes de continuar a execução.

[in] ContextRecord

Um ponteiro para uma estrutura CONTEXT que armazena o contexto durante a operação de desenrolamento.

[in, optional] HistoryTable

Um ponteiro para a tabela de histórico de desenrolamento. Essa estrutura é específica do processador. Para obter definições dessa estrutura, consulte Winternl.h.

Retornar valor

Essa função não retorna um valor.

Comentários

A estrutura FRAME_POINTERS é definida da seguinte maneira:

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

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho winnt.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

CONTEXTO

EXCEPTION_RECORD

APIs Vertdll disponíveis em enclaves de VBS