Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Recupera el contexto de invocación de la función que precede al contexto de función especificado.
Nota
Esta función no se implementa en todas las plataformas de procesador y la implementación es diferente en cada plataforma que la admita. En el siguiente prototipo se enumeran todos los parámetros potenciales y su aplicación. Lea más información sobre los prototipos de función específicos del procesador.
Sintaxis
NTSYSAPI PEXCEPTION_ROUTINE RtlVirtualUnwind(
[in] DWORD HandlerType,
[in] DWORD64 ImageBase,
[in] DWORD64 ControlPc,
[in] PRUNTIME_FUNCTION FunctionEntry,
[in, out] PCONTEXT ContextRecord,
[out] PVOID *HandlerData,
[out] PDWORD64 EstablisherFrame,
[in, out, optional] PKNONVOLATILE_CONTEXT_POINTERS ContextPointers
);
Parámetros
[in] HandlerType
Tipo de controlador. Este parámetro puede ser uno de los valores siguientes.
Este parámetro solo está presente en x64.
[in] ImageBase
Dirección base del módulo al que pertenece la función.
[in] ControlPc
Dirección virtual donde el control dejó la función especificada.
[in] FunctionEntry
Dirección de la entrada de la tabla de funciones para la función especificada. Para obtener la entrada de la tabla de funciones, llame a la función RtlLookupFunctionEntry .
[in, out] ContextRecord
Puntero a una estructura CONTEXT que representa el contexto del marco anterior.
[out] HandlerData
Ubicación del equipo. Si este parámetro es 0, el equipo se encuentra en el prólogo, el epílogo o una región de marco null de la función. Si este parámetro es 1, el equipo se encuentra en el cuerpo de la función.
Este parámetro no está presente en x64.
[out] EstablisherFrame
Puntero a una estructura FRAME_POINTERS que recibe el valor del puntero del marco de establecimiento. El puntero de marco real solo se define si InFunction es 1.
Este parámetro es de tipo PULONG64 en x64.
[in, out, optional] ContextPointers
Puntero opcional a una estructura de punteros de contexto.
Valor devuelto
Esta función devuelve un puntero a una función de devolución de llamada EXCEPTION_ROUTINE.
Comentarios
La lista completa de marcadores de epílogo para x64 es la siguiente:
- Ret
- ret n
- rep ret
- jmp imm8 | imm32 donde el destino está fuera de la función que se desenlazado
- jmp qword ptr imm32
- rex.w jmp reg
Requisitos
| Plataforma de destino | Windows |
| Encabezado | winnt.h (incluya Windows.h) |
| Library | Kernel32.lib |
| Archivo DLL | Kernel32.dll |