Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:✅ Windows 11 Build 26100.2314 oder höher ✅ Windows Server 2025 oder höher
Enklaven werden verwendet, um vertrauenswürdige Ausführungsumgebungen zu erstellen. Diese Vertdll-APIs stehen Entwicklern in VBS-Enklaven zur Verfügung.
Durch Vertdll.dll exportierte Funktionen
Die folgenden APIs, die von Vertdll.dll exportiert werden, sind für den Aufruf in VBS-Enklaven verfügbar.
Programmierschnittstelle (API) | Kopfzeile | Beschreibung |
---|---|---|
IsProcessorFeaturePresent | processthreadsapi.h | Bestimmt, ob das angegebene Prozessorfeature vom aktuellen Computer unterstützt wird. |
LdrDisableThreadCalloutsForDll | - | Deaktiviert die Threadanfügung und das Trennen von Aufrufen an eine DLL. |
NtTerminateProcess Siehe TerminateProcess |
processthreadsapi.h | Beendet den angegebenen Prozess und alle zugehörigen Threads. |
RtlCaptureContext | winnt.h | Ruft einen Kontextdatensatz im Kontext des Aufrufers ab. |
RtlGetLastNtStatus Siehe GetLastError |
- | Ruft den letzten NTSTATUS-Wert ab. |
RtlLookupFunctionEntry | winnt.h | Durchsucht die aktiven Funktionstabellen nach einem Eintrag, der dem angegebenen PC-Wert entspricht. |
RtlPcToFileHeader | winnt.h | Ruft die Basisadresse des Images ab, das den angegebenen PC-Wert enthält. |
RtlRaiseStatus Siehe RaiseException |
- | Löst eine Ausnahme mit nur einem dwExceptionCode-Parameter aus. RtlRaiseStatus ruft RaiseException auf und übergibt EXCEPTION_NONCONTINUABLE, um anzugeben, dass eine nicht zusammenhängende Ausnahme aufgetreten ist. |
RtlTimeFieldsToTime- | wdm.h | Konvertiert TIME_FIELDS Informationen in einen Systemzeitwert. |
RtlUnhandledExceptionFilter Siehe UnhandledExceptionFilter |
- | Eine anwendungsdefinierte Funktion, die unbehandelte Ausnahmen an den Debugger übergibt, wenn der Prozess gedebuggt wird. |
RtlUnwind | winnt.h | Initiiert eine Abwicklung von Prozeduraufrufframes. |
RtlUnwindEx | winnt.h | Initiiert eine Abwicklung von Prozeduraufrufframes. |
RtlVirtualUnwind | winnt.h | Ruft den Aufrufkontext der Funktion ab, die dem angegebenen Funktionskontext vorangestellt ist. |
RtlGetSystemGlobalData | - | Ruft die Adresse des globalen Datenbereichs des Systems ab. |
memcmp | memory.h oder string.h |
Vergleicht Zeichen in zwei Puffern. |
memcpy | memory.h oder string.h |
Kopiert Bytes zwischen Puffern. |
memmove | string.h | Verschiebt einen Puffer in einen anderen. |
memset | memory.h oder string.h |
Legt einen Puffer auf ein angegebenes Zeichen fest. |
OutputDebugStringW | debugapi.h | Sendet eine Zeichenfolge zur Anzeige an den Debugger. |
CallEnklave | enclaveapi.h | Ruft eine Funktion in einer Enklave auf. |
EnclaveGetEnclaveInformation | winenclaveapi.h | Ruft Informationen über die derzeit ausgeführte Enklave ab. |
GetCurrentProcess | processthreadsapi.h | Ruft ein Pseudohandle für den aktuellen Prozess ab. |
TerminateEnklave | enclaveapi.h | Beendet die Ausführung der Threads, die in einer Enklave ausgeführt werden. |
TerminateProcess | processthreadsapi.h | Beendet den angegebenen Prozess und alle zugehörigen Threads. |
GetLastError | errhandlingapi.h | Ruft den Codewert des letzten Fehlers des aufrufenden Threads ab. |
SetLastError | errhandlingapi.h | Legt den Letzten Fehlercode für den aufrufenden Thread fest. |
RaiseException | errhandlingapi.h | Löst eine Ausnahme im aufrufenden Thread aus. |
SetUnhandledExceptionFilter | errhandlingapi.h | Ermöglicht einer Anwendung, den Ausnahmehandler der obersten Ebene jedes Threads und Prozesses zu ersetzen. |
GetProcessHeap | heapapi.h | Stellt ein Handle zum Standard-Heap des aufrufenden Prozesses wieder her. |
GetProcessHeaps | heapapi.h | Gibt die Anzahl der aktiven Heaps zurück und ruft Handles für alle aktiven Heaps für den Aufrufvorgang ab. |
HeapAlloc | heapapi.h | Ordnet einen Speicherblock aus einem Heap zu. Der zugewiesene Speicher ist nicht verschiebbar. |
HeapCompact | heapapi.h | Gibt die Größe des größten zugesicherten freien Blocks im angegebenen Heap zurück. |
HeapCreate | heapapi.h | Erstellt ein privates Heap-Objekt, das vom aufrufenden Prozess verwendet werden kann. |
HeapDestroy | heapapi.h | Zerstört das angegebene Heap-Objekt. Es entfernt alle Seiten eines privaten Heapobjekts und gibt sie frei, und der Handle wird für den Heap ungültig. |
HeapFree | heapapi.h | Gibt einen Speicherblock frei, der einem Heap durch die HeapAlloc- oder HeapReAlloc-Funktion zugewiesen wurde. |
HeapLock | heapapi.h | Versucht, das kritische Abschnittsobjekt oder die Sperre abzurufen, die einem angegebenen Heap zugeordnet ist. |
HeapReAlloc | heapapi.h | Ordnet einen Speicherblock aus einem Heap neu zu. Mit dieser Funktion können Sie die Größe eines Speicherblocks ändern und andere Speicherblockeigenschaften ändern. |
HeapSize | heapapi.h | Ruft die Größe eines Speicherblocks ab, der einem Heap durch die HeapAlloc- oder HeapReAlloc-Funktion zugewiesen wurde. |
HeapUnlock | heapapi.h | Gibt den Besitz des kritischen Abschnittsobjekts oder der Sperre frei, die einem angegebenen Heap zugeordnet ist. Die Aktion der HeapLock-Funktion wird umgekehrt. |
InitializeSListHead- | interlockedapi.h | Initialisiert den Kopf einer einfach verknüpften Liste. |
InterlockedFlushSList | interlockedapi.h | Entfernt alle Elemente aus einer einfach verknüpften Liste. |
InterlockedPopEntrySList | interlockedapi.h | Entfernt ein Element aus der Vorderseite einer einfach verknüpften Liste. |
InterlockedPushEntrySList | interlockedapi.h | Fügt ein Element an der Vorderseite einer einfach verknüpften Liste ein. |
InterlockedPushListSList | interlockedapi.h | Fügt eine einfach verknüpfte Liste an der Vorderseite einer anderen verknüpften Liste ein. |
InterlockedPushListSListEx | interlockedapi.h | Fügt eine einfach verknüpfte Liste an der Vorderseite einer anderen verknüpften Liste ein. |
QueryDepthSList | interlockedapi.h | Ruft die Anzahl der Einträge in der angegebenen verknüpften Liste ab. |
DisableThreadLibraryCalls | libloaderapi.h | Deaktiviert die DLL_THREAD_ATTACH und DLL_THREAD_DETACH-Benachrichtigungen für die angegebene DLL. |
GetModuleHandleExW | libloaderapi.h | Ruft ein Modulhandle für das angegebene Modul ab und erhöht die Referenzanzahl des Moduls, es sei denn , GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT ist angegeben. |
GetProcAddress- | libloaderapi.h | Ruft die Adresse einer exportierten Funktion oder Variable aus der angegebenen DLL ab. |
SetThreadStackGuarantee | processthreadsapi.h | Legt die Mindestgröße des Stapels fest, der dem aufrufenden Thread oder der Faser zugeordnet ist, die bei allen Stapelüberlaufausnahmen verfügbar ist. |
VirtualAlloc | memoryapi.h | Reserviert, committet oder ändert den Status eines Seitenbereichs im virtuellen Adressraum des aufrufenden Prozesses. |
VirtualFree | memoryapi.h | Gibt frei, decommittet oder gibt frei und decommittet einen Bereich von Seiten innerhalb des virtuellen Adressraums des aufrufenden Prozesses. |
VirtualProtect | memoryapi.h | Ändert den Schutz in einem Bereich committeter Seiten im virtuellen Adressraum des aufrufenden Prozesses. |
VirtualQuery | memoryapi.h | Ruft Informationen zu einem Seitenbereich im virtuellen Adressraum des aufrufenden Prozesses ab. |
AcquireSRWLockExclusive | synchapi.h | Erwirbt eine Slim Reader/Writer (SRW)-Sperre im exklusiven Modus. |
AcquireSRWLockShared | synchapi.h | Erwirbt eine schlanke Lese-/Schreibzugriffssperre (SRW) im gemeinsam genutzten Modus. |
DeleteCriticalSection | synchapi.h | Gibt alle Ressourcen frei, die von einem nicht zugeordneten kritischen Abschnittsobjekt verwendet werden. |
DeleteSynchronizationBarrier | synchapi.h | Löscht eine Synchronisierungsbarriere. |
EnterCriticalSection | synchapi.h | Wartet auf den Besitz des angegebenen kritischen Abschnittsobjekts. Die Funktion gibt zurück, wenn dem aufrufenden Thread der Besitz gewährt wird. |
EnterSynchronizationBarrier | synchapi.h | Bewirkt, dass der aufrufende Thread bei einer Synchronisierungsbarriere wartet, bis die maximale Anzahl von Threads in die Barriere eingegangen sind. |
InitializeConditionVariable | synchapi.h | Initialisiert eine Bedingungsvariable. |
InitializeCriticalSection | synchapi.h | Initialisiert ein kritisches Abschnittsobjekt. |
InitializeCriticalSectionAndSpinCount | synchapi.h | Initialisiert ein kritisches Abschnittsobjekt und legt die Drehzahl für den kritischen Abschnitt fest. |
InitializeCriticalSectionEx | synchapi.h | Initialisiert ein kritisches Abschnittsobjekt mit einer Drehzahl und optionalen Flags. |
InitializeSRWLock | synchapi.h | Initialisieren Sie eine Slim Reader/Writer (SRW)-Sperre. |
InitializeSynchronizationBarrier | synchapi.h | Initialisiert eine neue Synchronisierungsbarriere. |
LeaveCriticalSection | synchapi.h | Gibt den Besitz des angegebenen kritischen Abschnittsobjekts frei. |
ReleaseSRWLockExclusive | synchapi.h | Gibt eine schlanke Lese-/Schreibsperre (SRW) frei, die im exklusiven Modus erworben wurde. |
ReleaseSRWLockShared | synchapi.h | Gibt eine schlanke Lese-/Schreibsperre (SRW) frei, die im freigegebenen Modus erworben wurde. |
SetCriticalSectionSpinCount | synchapi.h | Legt die Drehzahl für den angegebenen kritischen Abschnitt fest. |
SleepConditionVariableCS | synchapi.h | Schläft auf der angegebenen Bedingungsvariable und gibt den angegebenen kritischen Abschnitt als Atomoperation frei. |
SleepConditionVariableSRW | synchapi.h | Schläft auf der angegebenen Bedingungsvariable und gibt die angegebene Sperre als Atomoperation frei. |
TryAcquireSRWLockExclusive | synchapi.h | Versucht, eine schlanke Lese-/Schreibzugriffssperre (SRW) im exklusiven Modus zu erwerben. Wenn der Aufruf erfolgreich ist, übernimmt der aufrufende Thread den Besitz der Sperre. |
TryAcquireSRWLockShared | synchapi.h | Versucht, eine schlanke Lese-/Schreibzugriffssperre (SRW) im gemeinsam genutzten Modus zu erwerben. Wenn der Aufruf erfolgreich ist, übernimmt der aufrufende Thread den Besitz der Sperre. |
TryEnterCriticalSection | synchapi.h | Versucht, einen kritischen Abschnitt ohne Blockierung einzugeben. Wenn der Aufruf erfolgreich ist, übernimmt der aufrufende Thread den Besitz des kritischen Abschnitts. |
WaitOnAddress | synchapi.h | Wartet auf den Wert an der angegebenen Adresse, die geändert werden soll. |
WakeAllConditionVariable | synchapi.h | Alle Threads, die auf die angegebene Bedingungsvariable warten, aktivieren. |
WakeByAddressAll | synchapi.h | Aktiviert alle Threads, die auf den Wert einer Adresse warten, die geändert werden soll. |
WakeByAddressSingle | synchapi.h | Aktiviert alle Threads, die auf den Wert einer Adresse warten, die geändert werden soll. |
WakeConditionVariable | synchapi.h | Aktiviert einen einzelnen Thread, der auf die angegebene Bedingungsvariable wartet. |
GetCurrentThread | processthreadsapi.h | Ruft ein Pseudohandle für den aufrufenden Thread ab. |
GetCurrentThreadId- | processthreadsapi.h | Ruft den Threadbezeichner des aufrufenden Threads ab. |
TlsAlloc | processthreadsapi.h | Weist einen TLS-Index (Thread Local Storage) zu. |
TlsFree | processthreadsapi.h | Gibt einen TLS-Index frei, sodass er für die Wiederverwendung verfügbar ist. |
TlsGetValue | processthreadsapi.h | Ruft den Wert im TLS-Slot des aufrufenden Threads für den angegebenen TLS-Index ab. |
TlsSetValue | processthreadsapi.h | Speichert einen Wert im TLS-Slot des aufrufenden Threads für den angegebenen TLS-Index. |
EnclaveCopyIntoEnclave | winenclaveapi.h | Kopiert Daten aus einer nicht vertrauenswürdigen Adresse (außerhalb der Enklave) in die Enklave. |
EnclaveCopyOutOfEnclave | winenclaveapi.h | Kopiert Daten aus der Enklave in eine nicht vertrauenswürdige Adresse (außerhalb der Enklave). |
EnclaveGetAttestationReport | winenclaveapi.h | Ruft einen Enklavennachweisbericht ab, der die aktuelle Enklave beschreibt und von der Behörde signiert wird, die für den Typ der Enklave verantwortlich ist. |
EnclaveRestrictContainingProcessAccess | winenclaveapi.h | Beschränkt den Zugriff (oder stellt den Zugriff durch eine Enklave auf den Adressraum des enthaltenden Prozesses fest. |
EnclaveSealData | winenclaveapi.h | Generiert ein verschlüsseltes Binary Large Object (BLOB) aus unverschlüsselten Daten. |
EnclaveUnsealData | winenclaveapi.h | Entschlüsselt ein verschlüsseltes binär großes Objekt (BLOB). |
EnclaveVerifyAttestationReport | winenclaveapi.h | Überprüft einen Nachweisbericht, der auf dem aktuellen System generiert wurde. |
WideCharToMultiByte | stringapiset.h | Ordnet eine UTF-16-Zeichenfolge (breite Zeichen) einer neuen Zeichenfolge zu. Hinweis: Die einzige Für VBS-Enklaven verfügbare Codeseite ist CP_UTF8. |
MultiByteToWideChar | stringapiset.h | Ordnet eine Zeichenfolge einer UTF-16-Zeichenfolge (Breite Zeichen) zu. Hinweis: Die einzige Für VBS-Enklaven verfügbare Codeseite ist CP_UTF8. |
LdrResolveDelayLoadedAPI Siehe ResolveDelayLoadedAPI |
- | Sucht die Zielfunktion des angegebenen Imports und ersetzt den Funktionszeiger im Import-Thunk durch das Ziel der Funktionsimplementierung. |