GetMonitorInfoA function (winuser.h)

The GetMonitorInfo function retrieves information about a display monitor.


BOOL GetMonitorInfoA(
  [in]  HMONITOR      hMonitor,
  [out] LPMONITORINFO lpmi


[in] hMonitor

A handle to the display monitor of interest.

[out] lpmi

A pointer to a MONITORINFO or MONITORINFOEX structure that receives information about the specified display monitor.

You must set the cbSize member of the structure to sizeof(MONITORINFO) or sizeof(MONITORINFOEX) before calling the GetMonitorInfo function. Doing so lets the function determine the type of structure you are passing to it.

The MONITORINFOEX structure is a superset of the MONITORINFO structure. It has one additional member: a string that contains a name for the display monitor. Most applications have no use for a display monitor name, and so can save some bytes by using a MONITORINFO structure.

Return value

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero.



The winuser.h header defines GetMonitorInfo as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.


Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header winuser.h (include Windows.h)
Library User32.lib
DLL User32.dll
API set ext-ms-win-ntuser-sysparams-ext-l1-1-1 (introduced in Windows 10, version 10.0.14393)

See also



Multiple Display Monitors Functions

Multiple Display Monitors Overview