VirtualUnlock-Funktion (memoryapi.h)
Entsperrt einen angegebenen Seitenbereich im virtuellen Adressraum eines Prozesses, sodass das System die Seiten bei Bedarf in die Auslagerungsdatei austauschen kann.
Syntax
BOOL VirtualUnlock(
[in] LPVOID lpAddress,
[in] SIZE_T dwSize
);
Parameter
[in] lpAddress
Ein Zeiger auf die Basisadresse des Bereichs der zu entsperrenden Seiten.
[in] dwSize
Die Größe der entsperrten Region in Bytes. Der Bereich der betroffenen Seiten umfasst alle Seiten, die mindestens ein Bytes im Bereich vom parameter lpAddress bis zu (lpAddress+dwSize)
enthalten. Dies bedeutet, dass ein 2-Byte-Bereich, der eine Seitengrenze überspannt, dazu führt, dass beide Seiten entsperrt werden.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Damit die Funktion erfolgreich ist, muss der angegebene Bereich nicht mit einem Bereich übereinstimmen, der an einen vorherigen Aufruf der VirtualLock-Funktion übergeben wurde, aber alle Seiten im Bereich müssen gesperrt sein. Wenn eine der Seiten im angegebenen Bereich nicht gesperrt ist, entfernt VirtualUnlock diese Seiten aus dem Arbeitssatz, legt den letzten Fehler auf ERROR_NOT_LOCKED fest und gibt FALSE zurück.
Beim Aufrufen von VirtualUnlock in einem nicht gesperrten Speicherbereich werden die Seiten aus dem Arbeitssatz des Prozesses freigegeben.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | memoryapi.h (einschließlich Windows.h, Memoryapi.h) |
Bibliothek | onecore.lib |
DLL | Kernel32.dll |