The IDirectDrawSurface3::PageUnlock method unlocks a system-memory surface, allowing it to be paged out.
HRESULT PageUnlock(
DWORD dwFlags
);
If the method succeeds, the return value is DD_OK.
If the method fails, the return value may be one of the following error values:
DDERR_CANTPAGEUNLOCK |
DDERR_INVALIDOBJECT |
DDERR_INVALIDPARAMS |
DDERR_NOTPAGELOCKED |
DDERR_SURFACELOST |
A lock count is maintained for each surface and is incremented each time IDirectDrawSurface3::PageLock is called for that surface. The count is decremented when IDirectDrawSurface3::PageUnlock is called. When the count reaches 0, the memory is unlocked and can then be paged by the operating system.
This method works only on system-memory surfaces; it will not page unlock a display-memory surface or an emulated primary surface. If an application calls this method on a display-memory surface, this method will do nothing except return DD_OK.
This method was not implemented in the IDirectDraw interface.
Windows NT: Use version 5.0 or later.
Windows: Use Windows 95 or later. Available as a redistributable for Windows 95.
Windows CE: Unsupported.
Header: Declared in ddraw.h.
Import Library: Use ddraw.lib.
IDirectDrawSurface3::PageLock