Input and Output Methods
The Win32 API provides two very different approaches to console I/O, the
choice of which depends on how much flexibility and control an application needs.
The high-level approach enables simple character stream I/O, but it limits access
to a console's input and screen buffers. The low-level approach requires that
developers write more code and choose among a greater range of functions, but
it also gives an application more flexibility.
An application can use the file I/O functions,
ReadFile and
WriteFile, and the console functions,
ReadConsole and
WriteConsole, for high-level I/O that provides indirect access to a console's input and
screen buffers. The high-level input functions filter and process the data in a
console's input buffer to return input as a stream of characters, discarding
mouse and buffer-resizing input. Similarly, the high-level output functions write
a stream of characters that are displayed at the current cursor location in a
screen buffer. An application controls the way these functions work by setting a
console's I/O modes.
The low-level I/O functions provide direct access to a console's input and
screen buffers, enabling an application to access mouse and buffer-resizing input
events and extended information for keyboard events. Low-level output functions
enable an application to read from or write to a specified number of
consecutive character cells in a screen buffer, or to read or write to rectangular
blocks of character cells at a specified location in a screen buffer. A console's
input modes affect low-level input by enabling the application to determine
whether mouse and buffer-resizing events are placed in the input buffer. A console's
output modes have no effect on low-level output.
The high-level and low-level I/O methods are not mutually exclusive, and an
application can use any combination of these functions. Typically, however, an
application uses one approach or the other exclusively.
The sections that follow describe in detail the console modes and the
high-level and low-level I/O functions.
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database