Win32 Console Article Index for
Win32
Website Links For
Win32
 

Information About

Win32 Console




The input buffer is a queue where events are stored (from Keyboard , Mouse etc). The output buffer is a rectangular grid where characters are stored, together with their attributes. A console window may have several output buffers, only one of which is active (i.e. displayed) for a given moment.

The console window may be displayed as a normal window on the desktop, or may be switched to full screen to use the actual hardware Text Mode .

Programs may access a Win32 console either via high-level functions (such as ReadConsole and WriteConsole) or via low-level functions (e.g. ReadConsoleInput and WriteConsoleOutput).

Win32 consoles are typically used for applications that do not need to display images (e.g. for Command Line tools), including Terminal Emulator s, Perl , PHP (CLI), or FAR Manager , for example.

In earlier versions of Windows, there were no native support for consoles. To simplify the task of porting applications to Windows, Visual C++ was supplied with QuickWin , a library that implemented basic console functionality inside a regular Window.


UNICODE SUPPORT

Under Windows 95/98, the screen buffer mirrors the structure of VGA text buffer, with two bytes per character cell: one byte for character code, one byte for attributes (the character must be in OEM character set, the attribute is with high-intensity background/no blinking). This speeds up operation considerably if the actual VGA text mode is used.

Under Windows NT/2000/XP, the screen buffer uses four bytes per character cell: two bytes for character code, two bytes for attributes. The character is then encoded as switching to extend the range of displayed characters (but only if TrueType fonts are used for the console window). Even UTF-8 is available as "codepage 65001".


LIST OF WIN32 CONSOLE FUNCTIONS

  • AddConsoleAlias

  • AllocConsole

  • AttachConsole

  • CreateConsoleScreenBuffer

  • FillConsoleOutputAttribute

  • FillConsoleOutputCharacter

  • FlushConsoleInputBuffer

  • FreeConsole

  • GenerateConsoleCtrlEvent

  • GetConsoleAlias

  • GetConsoleAliases

  • GetConsoleAliasesLength

  • GetConsoleAliasExes

  • GetConsoleAliasExesLength

  • GetConsoleCP

  • GetConsoleCursorInfo

  • GetConsoleDisplayMode

  • GetConsoleFontSize

  • GetConsoleMode

  • GetConsoleOutputCP

  • GetConsoleProcessList

  • GetConsoleScreenBufferInfo

  • GetConsoleSelectionInfo

  • GetConsoleTitle

  • GetConsoleWindow

  • GetCurrentConsoleFont

  • GetLargestConsoleWindowSize

  • GetNumberOfConsoleInputEvents

  • GetNumberOfConsoleMouseButtons

  • GetStdHandle

  • HandlerRoutine

  • PeekConsoleInput

  • ReadConsole

  • ReadConsoleInput

  • ReadConsoleOutput

  • ReadConsoleOutputAttribute

  • ReadConsoleOutputCharacter

  • ScrollConsoleScreenBuffer

  • SetConsoleActiveScreenBuffer

  • SetConsoleCP

  • SetConsoleCtrlHandler

  • SetConsoleCursorInfo

  • SetConsoleCursorPosition

  • SetConsoleDisplayMode

  • SetConsoleMode

  • SetConsoleOutputCP

  • SetConsoleScreenBufferSize

  • SetConsoleTextAttribute

  • SetConsoleTitle

  • SetConsoleWindowInfo

  • SetStdHandle

  • WriteConsole

  • WriteConsoleInput

  • WriteConsoleOutput

  • WriteConsoleOutputAttribute

  • WriteConsoleOutputCharacter



SEE ALSO



EXTERNAL LINKS