API de Vertdll disponibles en enclaves de VBS
Se aplica a:✅ Windows 11 Build 26100.2314 o posterior Windows Server 2025 o posterior ✅
Los enclaves se usan para crear entornos de ejecución de confianza. Estas API de Vertdll están disponibles para los desarrolladores en enclaves de VBS.
Funciones exportadas por Vertdll.dll
Las siguientes API exportadas por Vertdll.dll están disponibles para que se las llame en enclaves de VBS.
API | Encabezado | Descripción |
---|---|---|
IsProcessorFeaturePresent | processthreadsapi.h | Determina si el equipo actual admite la característica de procesador especificada. |
LdrDisableThreadCalloutsForDll | - | Deshabilita la conexión de subprocesos y desasocia las llamadas a un archivo DLL. |
NtTerminateProcess Consulte TerminateProcess |
processthreadsapi.h | Finaliza el proceso especificado y todos sus subprocesos. |
RtlCaptureContext | winnt.h | Recupera un registro de contexto en el contexto del autor de la llamada. |
RtlGetLastNtStatus Consulte GetLastError |
- | Obtiene el último valor NTSTATUS. |
RtlLookupFunctionEntry | winnt.h | Busca en las tablas de funciones activas una entrada que corresponda al valor de PC especificado. |
RtlPcToFileHeader | winnt.h | Recupera la dirección base de la imagen que contenga el valor de PC especificado. |
RtlRaiseStatus Consulte RaiseException |
- | Genera una excepción, con solo un parámetro dwExceptionCode. RtlRaiseStatus invoca RaiseException y pasa EXCEPTION_NONCONTINUABLE para indicar que se ha encontrado una excepción no continuable. |
RtlTimeFieldsToTime | wdm.h | Convierte la información TIME_FIELDS en un valor de hora del sistema. |
RtlUnhandledExceptionFilter Consulte UnhandledExceptionFilter |
- | Una función definida por la aplicación que pasa excepciones no controladas al depurador, si el proceso se está depurando. |
RtlUnwind | winnt.h | Inicia un desarrollo de fotogramas de llamada de procedimiento. |
RtlUnwindEx | winnt.h | Inicia un desarrollo de fotogramas de llamada de procedimiento. |
RtlVirtualUnwind | winnt.h | Recupera el contexto de invocación de la función que precede al contexto de función especificado. |
RtlGetSystemGlobalData | - | Obtiene la dirección del área de datos global del sistema. |
memcmp | memory.h o string.h |
Compara los caracteres de dos búferes. |
memcpy | memory.h o string.h |
Copia bytes entre búferes. |
memmove | string.h | Mueve un búfer a otro. |
memset | memory.h o string.h |
Establece un búfer en un carácter especificado. |
OutputDebugStringW | debugapi.h | Envía una cadena al depurador para que la muestre. |
CallEnclave | enclaveapi.h | Llama a una función dentro de un enclave. |
EnclaveGetEnclaveInformation | winenclaveapi.h | Obtiene información sobre el enclave que se está ejecutando actualmente. |
GetCurrentProcess | processthreadsapi.h | Recupera un pseudocontrolador para el proceso actual. |
TerminateEnclave | enclaveapi.h | Finaliza la ejecución de los subprocesos que se ejecutan dentro de un enclave. |
TerminateProcess | processthreadsapi.h | Finaliza el proceso especificado y todos sus subprocesos. |
GetLastError | errhandlingapi.h | Recupera el valor del último código de error del subproceso de llamada. |
SetLastError | errhandlingapi.h | Establece el último código de error para el subproceso que realiza la llamada. |
RaiseException | errhandlingapi.h | Genera una excepción en el subproceso que llama. |
SetUnhandledExceptionFilter | errhandlingapi.h | Permite a una aplicación sustituir al controlador de excepciones de nivel superior de cada subproceso de un proceso. |
GetProcessHeap | heapapi.h | Recupera un controlador del montón predeterminado del proceso de llamada. |
GetProcessHeaps | heapapi.h | Devuelve el número de montones activos y recupera controladores de todos los montones activos para el proceso de llamada. |
HeapAlloc | heapapi.h | Asigna un bloque de memoria de un montón. La memoria asignada no es extraíble. |
HeapCompact | heapapi.h | Devuelve el tamaño del bloque libre confirmado más grande del montón especificado. |
HeapCreate | heapapi.h | Crea un objeto de montón privado que el proceso de llamada puede usar. |
HeapDestroy | heapapi.h | Destruye el objeto de montón especificado. Deshace el "commit" y libera todas las páginas de un objeto de montón privado e invalida el controlador del montón. |
HeapFree | heapapi.h | Libera un bloque de memoria asignado desde un montón por la función HeapAlloc o HeapReAlloc. |
HeapLock | heapapi.h | Intenta adquirir el objeto de sección crítica, o bloqueo, que está asociado a un montón especificado. |
HeapReAlloc | heapapi.h | Vuelve a asignar un bloque de memoria del montón. Esta función permite cambiar el tamaño de un bloque de memoria y otras propiedades. |
HeapSize | heapapi.h | Recupera el tamaño de un bloque de memoria asignado desde un montón por la función HeapAlloc o HeapReAlloc. |
HeapUnlock | heapapi.h | Libera la propiedad del objeto de sección crítica, o bloqueo, que está asociado a un montón especificado. Invierte la acción de la función HeapLock. |
InitializeSListHead | interlockedapi.h | Inicializa el encabezado de una lista vinculada simple. |
InterlockedFlushSList | interlockedapi.h | Quita todos los elementos de una lista enlazada simple. |
InterlockedPopEntrySList | interlockedapi.h | Quita un elemento de la parte frontal de una lista vinculada simple. |
InterlockedPushEntrySList | interlockedapi.h | Inserta un elemento en la parte frontal de una lista vinculada simple. |
InterlockedPushListSList | interlockedapi.h | Inserta una lista vinculada simple en la parte frontal de otra lista vinculada simple. |
InterlockedPushListSListEx | interlockedapi.h | Inserta una lista vinculada simple en la parte frontal de otra lista vinculada simple. |
QueryDepthSList | interlockedapi.h | Recupera el número de entradas de la lista vinculada simple especificada. |
DisableThreadLibraryCalls | libloaderapi.h | Deshabilita las notificaciones DLL_THREAD_ATTACH y DLL_THREAD_DETACH para el DLL especificado. |
GetModuleHandleExW | libloaderapi.h | Recupera un controlador de módulo para el módulo especificado e incrementa el recuento de referencias del módulo a menos que se especifique GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT. |
GetProcAddress | libloaderapi.h | Recupera la dirección de una función o variable exportada del DLL especificado. |
SetThreadStackGuarantee | processthreadsapi.h | Establece el tamaño mínimo de la pila asociada al subproceso de llamada o la fibra que estará disponible durante las excepciones de desbordamiento de pila. |
VirtualAlloc | memoryapi.h | Reserva, confirma o cambia el estado de una región de páginas en el espacio de direcciones virtuales del proceso de llamada. |
VirtualFree | memoryapi.h | Libera, deshace el "commit" o libera y deshace el "commit" de una región de páginas dentro del espacio de direcciones virtuales del proceso de llamada. |
VirtualProtect | memoryapi.h | Cambia la protección en una región de páginas confirmadas en el espacio de direcciones virtuales del proceso de llamada. |
VirtualQuery | memoryapi.h | Recupera información sobre un intervalo de páginas en el espacio de direcciones virtuales del proceso de llamada. |
AcquireSRWLockExclusive | synchapi.h | Adquiere un bloqueo fino de lector/escritor (SRW) en modo exclusivo. |
AcquireSRWLockShared | synchapi.h | Adquiere un bloqueo fino de lector/escritor (SRW) en modo compartido. |
DeleteCriticalSection | synchapi.h | Libera todos los recursos usados por un objeto de sección crítica sin propietario. |
DeleteSynchronizationBarrier | synchapi.h | Elimina una barrera de sincronización. |
EnterCriticalSection | synchapi.h | Espera la propiedad del objeto de sección crítica especificado. La función se devuelve cuando se concede la propiedad al subproceso que realiza la llamada. |
EnterSynchronizationBarrier | synchapi.h | Hace que el subproceso de llamada espere a una barrera de sincronización hasta que el número máximo de subprocesos haya entrado en la barrera. |
InitializeConditionVariable | synchapi.h | Inicializa una variable de condición. |
InitializeCriticalSection | synchapi.h | Inicializa un objeto de sección crítica. |
initializeCriticalSectionAndSpinCount | synchapi.h | Inicializa un objeto de sección crítica y establece el número de giros de la sección crítica. |
InitializeCriticalSectionEx | synchapi.h | Inicializa un objeto de sección crítica con un recuento de giros y marcas opcionales. |
InitializeSRWLock | synchapi.h | Inicialice un bloqueo fino de lector/escritor (SRW). |
InitializeSynchronizationBarrier | synchapi.h | Inicializa una nueva barrera de sincronización. |
LeaveCriticalSection | synchapi.h | Libera la propiedad del objeto de sección crítica especificado. |
ReleaseSRWLockExclusive | synchapi.h | Libera un bloqueo fino de lector/escritor (SRW) que se adquirió en modo exclusivo. |
ReleaseSRWLockShared | synchapi.h | Libera un bloqueo fino de lector/escritor (SRW) que se adquirió en modo compartido. |
SetCriticalSectionSpinCount | synchapi.h | Establece el número de giros de la sección crítica especificada. |
SleepConditionVariableCS | synchapi.h | Se suspende en la variable de condición especificada y libera la sección crítica especificada como una operación atómica. |
SleepConditionVariableSRW | synchapi.h | Se suspende en la variable de condición especificada y libera el bloqueo especificado como una operación atómica. |
TryAcquireSRWLockExclusive | synchapi.h | Intenta adquirir un bloqueo fino de lector/escritor (SRW) en modo exclusivo. Si la llamada se realiza correctamente, el subproceso que realiza la llamada toma propiedad del bloqueo. |
TryAcquireSRWLockShared | synchapi.h | Intenta adquirir un bloqueo fino de lector/escritor (SRW) en modo compartido. Si la llamada se realiza correctamente, el subproceso que realiza la llamada toma propiedad del bloqueo. |
TryEnterCriticalSection | synchapi.h | Intenta escribir una sección crítica sin bloqueo. Si la llamada se realiza correctamente, el subproceso que realiza la llamada toma posesión de la sección crítica. |
WaitOnAddress | synchapi.h | Espera a que cambie el valor en la dirección especificada. |
WakeAllConditionVariable | synchapi.h | Despierta todos los subprocesos en espera de la variable de condición especificada. |
WakeByAddressAll | synchapi.h | Activa todos los subprocesos que esperan a que cambie el valor de una dirección. |
WakeByAddressSingle | synchapi.h | Activa un subproceso que espera a que cambie el valor de una dirección. |
WakeConditionVariable | synchapi.h | Activa un único subproceso que espera la variable de condición especificada. |
GetCurrentThread | processthreadsapi.h | Recupera un pseudcontrolador para el subproceso que realiza la llamada. |
GetCurrentThreadId | processthreadsapi.h | Recupera el identificador de subproceso del subproceso de llamada. |
TlsAlloc | processthreadsapi.h | Asigna un índice de almacenamiento local de subprocesos (TLS). |
TlsFree | processthreadsapi.h | Libera un índice TLS, lo que hace que esté disponible para su reutilización. |
TlsGetValue | processthreadsapi.h | Recupera el valor de la ranura TLS del subproceso de llamada para el índice TLS especificado. |
TlsSetValue | processthreadsapi.h | Almacena un valor de la ranura TLS del subproceso de llamada para el índice TLS especificado. |
EnclaveGetAttestationReport | winenclaveapi.h | Obtiene un informe de atestación de enclaves que describe el enclave actual y está firmado por la autoridad responsable del tipo del enclave. |
EnclaveSealData | winenclaveapi.h | Genera un objeto binario grande grande (blob) cifrado a partir de datos no cifrados. |
EnclaveUnsealData | winenclaveapi.h | Descifra un objeto binario grande cifrado (blob). |
EnclaveVerifyAttestationReport | winenclaveapi.h | Comprueba un informe de atestación que se generó en el sistema actual. |
WideCharToMultiByte | stringapiset.h | Asigna una cadena UTF-16 (carácter ancho) a una nueva cadena de caracteres. Nota: La única página de códigos disponible para enclaves de VBS es CP_UTF8. |
MultiByteToWideChar | stringapiset.h | Asigna una cadena de caracteres a una cadena UTF-16 (carácter ancho). Nota: La única página de códigos disponible para enclaves de VBS es CP_UTF8. |
LdrResolveDelayLoadedAPI Consulte ResolveDelayLoadedAPI |
- | Busca la función de destino de la importación especificada y reemplaza el puntero de la función en el código thunk de importación por el destino de la implementación de la función. |