The IDirectDrawSurface3::GetDC method creates a GDI-compatible handle of a device context for the surface.
HRESULT GetDC(
HDC FAR *lphDC
);
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_DCALREADYCREATED |
| DDERR_GENERIC |
| DDERR_INVALIDOBJECT |
| DDERR_INVALIDPARAMS |
| DDERR_INVALIDSURFACETYPE |
| DDERR_SURFACELOST |
| DDERR_UNSUPPORTED |
| DDERR_WASSTILLDRAWING |
This method uses an internal version of the IDirectDrawSurface3::Lock method to lock the surface. The surface remains locked until the IDirectDrawSurface3::ReleaseDC method is called.
IDirectDrawSurface3::Lock