What does Windows error code 1171 (ERROR_POINT_NOT_FOUND) mean?

 
Previous Next
ERROR_SET_NOT_FOUND ERROR_NO_TRACKING_SERVICE

ERROR_POINT_NOT_FOUND

The supplied input point is not in mouse-movement history.

ERROR_POINT_NOT_FOUND is error 1171 (0x493). Its documented meaning is specific: the point passed to GetMouseMovePointsEx could not be found in the system buffer of recent mouse or pen coordinates. It is not a geometry, hit-testing, map, or drawing error.

How the lookup works

Windows retains up to 64 recent coordinates and timestamps. The caller supplies a MOUSEMOVEPOINT; when that point is found, the function returns that point and earlier history entries. A timestamp can distinguish identical coordinates recorded at different times.

Why a valid-looking point may not match

  • the point is older than the retained 64-entry history
  • client coordinates were supplied instead of screen coordinates
  • the caller delayed too long after receiving WM_MOUSEMOVE
  • timestamp was omitted or does not correspond to the intended repeated coordinate
  • display versus high-resolution mode was mixed
  • negative virtual-screen coordinates were encoded incorrectly on multi-monitor systems

Diagnostic data

  • input x, y, timestamp, structure size, and resolution mode
  • time elapsed since the originating input message
  • virtual-screen origin and dimensions
  • whether coordinates were converted with ClientToScreen or derived another way
  • return value -1 and immediate GetLastError value

The multi-monitor case deserves explicit testing because the virtual desktop can contain negative coordinates. Microsoft's documentation describes conversion needed when values are represented in the 16-bit coordinate range.

Recovery

Use a point taken directly from a recent WM_MOUSEMOVE, convert it to the required coordinate system, and call promptly. If exact historical reconstruction is optional, accept that older samples can fall out of the buffer and continue with the input events already captured by the application.

Repeatedly querying the same stale point will not succeed. A retry must use a newer valid anchor or corrected coordinate/timestamp representation.

Developer recommendations

  • call the function on the input-processing path rather than after a long asynchronous delay
  • store coordinates and timestamps together
  • test duplicate coordinates, multiple monitors, negative origins, pen input, and both resolution modes
  • treat the history as bounded sampling data, not a durable event log

Related errors

ERROR_INVALID_PARAMETER can indicate invalid sizes, modes, or buffers. ERROR_INSUFFICIENT_BUFFER concerns storage supplied by a caller in other APIs. Error 1171 specifically means the input point is absent from the movement-history buffer searched by GetMouseMovePointsEx.

Example

A drawing application queues pointer processing for several seconds and later asks for history anchored at the original coordinate. More than 64 movements have occurred, so the anchor has been evicted and the function returns 1171. Moving the history call into the immediate input handler and queueing the returned samples preserves the stroke data.

References


Looking for a different code? Search another status or error code.