Reserviert einen Seitenbereich innerhalb des virtuellen Adressraumes eines Prozesses
#include <Memory.au3>
_MemVirtualAllocEx ( $hProcess, $pAddress, $iSize, $iAllocation, $iProtect )
$hProcess | Handle zu einem Prozess |
$pAddress | Zeiger auf die gewünschte Basisadresse des Seitenbereiches, der zugeordnet werden soll. |
$iSize | Legt die Größe des zuzuordnenden Bereichs in Bytes fest. |
$iAllocation | Legt die Art der Speicherzuordnung fest: $MEM_COMMIT - Stellt physischen Speicher im RAM oder in der Auslagerungsdatei für den angegebenen Seitenbereich zur Verfügung. $MEM_RESERVE - Reserviert einen Bereich im virtuellen Adressraum eines Prozesses, ohne jeglichen realen (physischen) Speicher zur Verfügung zu stellen. $MEM_TOP_DOWN - Speicher wird an der höchstmöglichen Adresse zugeordnet. |
$iProtect | Art des Zugriffsschutzes: $PAGE_READONLY - Erlaubt nur Lesezugriffe auf den eingebundenen Seitenbereich. $PAGE_READWRITE - Erlaubt Lese- und Schreibzugriffe auf den eingebundenen Bereich. $PAGE_EXECUTE - Erlaubt Codeausführung im eingebundenen Bereich. $PAGE_EXECUTE_READ - Erlaubt Codeausführung und Lesezugriffe im eingebundenen Bereich. $PAGE_EXECUTE_READWRITE - Erlaubt Codeausführung, Lese- und Schreibzugriffe im eingebundenen Bereich. $PAGE_GUARD - Geschützte Seiten; sie sind zwar eingebunden, lösen aber beim ersten Zugriff eine Ausnahme (Exception) aus, die vom VMM aufgefangen wird. $PAGE_NOACCESS - Verbietet jeglichen Zugriff auf den Seitenbereich, Versuch führt zum Prozessabbruch. $PAGE_NOCACHE - Seitenbereich darf nicht im Systemcache gespeichert werden. |
_MemVirtualAlloc kann nur Speicher im Adressraum des aufrufenden Prozesses bereitstellen,
_MemVirtualAllocEx kann auch auf den Adressraum anderer Prozesse zugreifen.
Suche nach VirtualAllocEx in der MSDN Bibliothek.