The IDirectDraw2::GetScanLine method retrieves the scan line that is currently being drawn on the monitor.
HRESULT GetScanLine(
LPDWORD lpdwScanLine
);
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_INVALIDOBJECT |
DDERR_INVALIDPARAMS |
DDERR_UNSUPPORTED |
DDERR_VERTICALBLANKINPROGRESS |
Scan lines are reported as zero-based integers. The returned scan line value is between 0 and n, where scan line 0 is the first visible scan line on the screen and n is the last visible scan line, plus any scan lines that occur during vblank. So, in a case where an application is running at 640×480, and there are 12 scan lines during vblank, the values returned by this method will range from 0 to 491.
Windows NT: Use version 4.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.
IDirectDraw2::GetVerticalBlankStatus, IDirectDraw2::WaitForVerticalBlank