VirtualUnlock 函式 (memoryapi.h)
在進程的虛擬位址空間中解除鎖定指定的頁面範圍,讓系統視需要將頁面交換至分頁檔案。
語法
BOOL VirtualUnlock(
[in] LPVOID lpAddress,
[in] SIZE_T dwSize
);
參數
[in] lpAddress
要解除鎖定之頁面區域的基底位址指標。
[in] dwSize
要解除鎖定的區域大小,以位元組為單位。 受影響的頁面區域包含範圍中包含一或多個位元組的所有頁面,從 lpAddress 參數到 (lpAddress+dwSize)
。 這表示 2 位元組範圍跨越頁面界限會導致這兩個頁面解除鎖定。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
備註
若要讓函式成功,指定的範圍與傳遞至 VirtualLock 函式先前呼叫的範圍不相符,但範圍中的所有頁面都必須鎖定。 如果指定範圍中的任何頁面未鎖定, VirtualUnlock 會從工作集中移除這類頁面、將最後一個錯誤設定為 ERROR_NOT_LOCKED,並傳回 FALSE。
在未鎖定的記憶體範圍上呼叫 VirtualUnlock ,會從進程的工作集釋放頁面。
需求
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | memoryapi.h (包括 Windows.h、Memoryapi.h) |
程式庫 | onecore.lib |
DLL | Kernel32.dll |