|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| No
| Import Library
| kernel32.lib
| Header File
| wincon.h
| Unicode
| WinNT
| Platform Notes
| None
|
|
|
WriteConsoleOutput
The
WriteConsoleOutput function writes character and color attribute data to a specified rectangular
block of character cells in a console screen buffer. The data to be written is
taken from a correspondingly sized rectangular block at a specified location
in the source buffer.
BOOL WriteConsoleOutput(
HANDLE hConsoleOutput,
| // handle to a console screen buffer
|
CONST CHAR_INFO *lpBuffer,
| // pointer to buffer with data to write
|
COORD dwBufferSize,
| // column-row size of source buffer
|
COORD dwBufferCoord,
| // upper-left cell to write from
|
PSMALL_RECT lpWriteRegion
| // pointer to rectangle to write to
|
);
|
|
Parameters
hConsoleOutput
Identifies the screen buffer. The handle must have GENERIC_WRITE access.
lpBuffer
Points to a source buffer that contains the data to be written to the screen
buffer. This pointer is treated as the origin of a two-dimensional array of
CHAR_INFO structures whose size is specified by the
dwBufferSize parameter.
dwBufferSize
Specifies the size, in character cells, of the buffer pointed to by the
lpBuffer parameter. The
X member of the
COORD structure is the number of columns; the
Y member is the number of rows.
dwBufferCoord
Specifies the coordinates of the upper-left cell in the buffer pointed to by
the
lpBuffer parameter to write data from. The
X member of the
COORD structure is the column, and the
Y member is the row.
lpWriteRegion
Points to a
SMALL_RECT structure. On input, the structure members specify the upper-left and
lower-right coordinates of the screen buffer rectangle to write to. On output, the
structure members specify the actual rectangle that was written to.
Return Values
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.
Remarks
WriteConsoleOutput treats the source buffer and the destination screen buffer as two-dimensional
arrays (columns and rows of character cells). The rectangle pointed to by the
lpWriteRegion parameter specifies the size and location of the block to be written to in
the screen buffer. A rectangle of the same size is located with its upper-left
cell at the coordinates of the
dwBufferCoord parameter in the
lpBuffer array. Data from the cells that are in the intersection of this rectangle and
the source buffer rectangle (whose dimensions are specified by the
dwBufferSize parameter) is written to the destination rectangle.
Cells in the destination rectangle whose corresponding source location are
outside the boundaries of the source buffer rectangle are left unaffected by the
write operation. In other words, these are the cells for which no data is
available to be written.
Before
WriteConsoleOutput returns, it sets the members of
lpWriteRegion to the actual screen buffer rectangle affected by the write operation. This
rectangle reflects the cells in the destination rectangle for which there
existed a corresponding cell in the source buffer, because
WriteConsoleOutput clips the dimensions of the destination rectangle to the boundaries of the
screen buffer.
If the rectangle specified by
lpWriteRegion lies completely outside the boundaries of the screen buffer, or if the
corresponding rectangle is positioned completely outside the boundaries of the source
buffer, no data is written. In this case, the function returns with the
members of the structure pointed to by the
lpWriteRegion parameter set such that the
Right member is less than the
Left, or the
Bottom member is less than the
Top. To determine the size of the screen buffer, use the
GetConsoleScreenBufferInfo function.
WriteConsoleOutput has no effect on the cursor position.
Windows NT: This function uses either Unicode characters or 8-bit characters from the
console's current codepage. The console's codepage defaults initially to the
system's OEM codepage. To change the console's codepage, use the
SetConsoleCP or
SetConsoleOutputCP functions, or use the
chcp or
mode con cp select= commands.
See Also
CHAR_INFO,
COORD,
GetConsoleScreenBufferInfo,
ReadConsoleOutput,
ReadConsoleOutputAttribute,
ReadConsoleOutputCharacter,
SetConsoleCP,
SetConsoleOutputCP,
SMALL_RECT,
WriteConsoleOutputAttribute,
WriteConsoleOutputCharacter
- 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