Funktionreferenz


_MemVirtualAlloc

Beschreibung anzeigen in

Reserviert oder bindet einen Seitenbereich innerhalb des virtuellen Adressraumes des aufrufenden Prozesses

#include <Memory.au3>
_MemVirtualAlloc ( $pAddress, $iSize, $iAllocation, $iProtect )

Parameter

$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 des virtuellen Adressraums des Prozesses, ohne tatsächlichen physischen Speicher im Arbeitsspeicher oder in der Auslagerungsdatei auf der Festplatte zuzuweisen.
    $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 - $PAGE_GUARD - Seiten in der Region werden Guard-Seiten (Geschützte Seiten). Jeder Versuch, auf eine Schutzseite zuzugreifen, führt dazu, dass das System eine STATUS_GUARD_PAGE_VIOLATION-Ausnahme auslöst und den Schutzseitenstatus deaktiviert. Guard-Seiten fungieren somit als einmaliger Zugriffsalarm. Weitere Informationen sind unter Erstellen von Schutzseiten zu finden.
    $PAGE_NOACCESS - Verbietet jeglichen Zugriff auf den Seitenbereich, Versuch führt zum Prozessabbruch.
    $PAGE_NOCACHE - Seitenbereich darf nicht im Systemcache gespeichert werden.

Rückgabewert

Erfolg: Zeiger auf die Basisadresse des Speicherbereichs.
Fehler: 0

Bemerkungen

_MemVirtualAlloc kann nur Speicher im Adressraum des aufrufenden Prozesses bereitstellen,
_MemVirtualAllocEx kann auch auf den Adressraum anderer Prozesse zugreifen.

Verwandte Funktionen

_MemGlobalAlloc, _MemVirtualFree

Siehe auch

Suche nach VirtualAlloc in der MSDN Bibliothek.