GetConsoleDisplayMode function


This document describes console platform functionality that is no longer a part of our ecosystem roadmap. We do not recommend using this content in new products, but we will continue to support existing usages for the indefinite future. Our preferred modern solution focuses on virtual terminal sequences for maximum compatibility in cross-platform scenarios. You can find more information about this design decision in our classic console vs. virtual terminal document.

Retrieves the display mode of the current console.


BOOL WINAPI GetConsoleDisplayMode(
  _Out_ LPDWORD lpModeFlags


lpModeFlags [out]
The display mode of the console. This parameter can be one or more of the following values.

Value Meaning
CONSOLE_FULLSCREEN 1 Full-screen console. The console is in this mode as soon as the window is maximized. At this point, the transition to full-screen mode can still fail.
CONSOLE_FULLSCREEN_HARDWARE 2 Full-screen console communicating directly with the video hardware. This mode is set after the console is in CONSOLE_FULLSCREEN mode to indicate that the transition to full-screen mode has completed.


The transition to a 100% full screen video hardware mode was removed in Windows Vista with the replatforming of the graphics stack to WDDM. On later versions of Windows, the maximum resulting state is CONSOLE_FULLSCREEN representing a frameless window that appears full screen but isn't in exclusive control of the hardware.

Return value

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.


To compile an application that uses this function, define _WIN32_WINNT as 0x0500 or later. For more information, see Using the Windows Headers.


This API is not recommended and does not have a virtual terminal equivalent. This decision intentionally aligns the Windows platform with other operating systems where the user is granted full control over this presentation option. Applications remoting via cross-platform utilities and transports like SSH may not work as expected if using this API.


Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header ConsoleApi3.h (via WinCon.h, include Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

See also

Console Functions

Console Modes