SetProcessValidCallTargets-Funktion (memoryapi.h)
Stellt Control Flow Guard (CFG) eine Liste gültiger indirekter Aufrufziele bereit und gibt an, ob diese als gültig gekennzeichnet werden sollen oder nicht. Die gültigen Aufrufzielinformationen werden als Liste von Offsets relativ zu einem virtuellen Speicherbereich (Start und Größe des Bereichs) bereitgestellt. Die angegebenen Aufrufziele sollten 16 Byte ausgerichtet und in aufsteigender Reihenfolge sein.
Syntax
BOOL SetProcessValidCallTargets(
[in] HANDLE hProcess,
[in] PVOID VirtualAddress,
[in] SIZE_T RegionSize,
[in] ULONG NumberOfOffsets,
[in, out] PCFG_CALL_TARGET_INFO OffsetInformation
);
Parameter
[in] hProcess
Das Handle für den Zielprozess.
[in] VirtualAddress
Der Anfang der Region des virtuellen Arbeitsspeichers, deren Aufrufziele als gültig gekennzeichnet werden. Der Speicherbereich muss mithilfe einer der ausführbaren Speicherschutzkonstanten zugeordnet werden.
[in] RegionSize
Die Größe des virtuellen Speicherbereichs.
[in] NumberOfOffsets
Die Anzahl der Offsets relativ zu den virtuellen Speicherbereichen.
[in, out] OffsetInformation
Eine Liste von Offsets und Flags relativ zu den virtuellen Speicherbereichen.
Rückgabewert
TRUE , wenn der Vorgang erfolgreich war; andernfalls FALSE. Rufen Sie GetLastError auf, um Fehlerwerte für diese Funktion abzurufen.
Hinweise
Diese Funktion ist nicht erfolgreich, wenn Control Flow Guard für den Zielprozess nicht aktiviert ist. Dies kann mithilfe von GetProcessMitigationPolicy überprüft werden.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 10 [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2016 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | memoryapi.h (einschließlich Windows.h, Memoryapi.h) |
Bibliothek | WindowsApp.lib |
DLL | Kernelbase.dll |