wincon.h


WriteConsole

La función WriteConsole escribe una cadena de caracteres a un buffer de pantalla de consola empezando en la posición actual del cursor.

Sintaxis

BOOL WriteConsole(
    HANDLE hConsoleOutput,          // manipulador de un buffer de pantalla de consola 
    CONST VOID *lpBuffer,           // puntero a buffer desde el que escribir 
    DWORD nNumberOfCharsToWrite,    // número de caracteres a escribir 
    LPDWORD lpNumberOfCharsWritten, // puntero a número de caracteres escritos 
    LPVOID lpReserved               // reservado 
   );

Parámetros

hConsoleOutput
Identifica un buffer de pantalla de consila. El manipulador debe tener acceso GENERIC_WRITE.
lpBuffer
Apunta a un buffer que contiene caracteres a escribir en el buffer de pantalla.
nNumberOfCharsToWrite
Especifica el número de caracteres a escribir.
lpNumberOfCharsWritten
Apunta a una variable de 32 bits que recibe el número de caracteres escritos actualmente.
lpReserved
Reservado; debe ser NULL.

Valor de retorno

Si la función tiene éxito, el valor de retorno es distinto de cero.

Si la función falla, el valor de retorno es cero. Para optener información adicional sobre el error, llamar a GetLastError.

Observaciones

WriteConsole escribe caracteres a un buffer de pantalla de consola. Se comporta como la función WriteFile, excepto que puede escribir tanto caracteres Unicode (wide-character) o modo ANSI. Para crear una aplicación que mantenga un conjunto único de fuentes compatible con ambos modos, usar WriteConsole en lugar de WriteFile. Aunque WriteConsole sólo se puede usar con un manipulador de buffer de pantalla de consola, WriteFile puede ser usado con otros manipuladores (como ficheros o tuberías). WriteConsole falla si se usa con un manipulador estándar que haya sido redirigido para ser algo diferente de un manipulador de consola.

A pesar de que una aplicación puede usar WriteConsole en modo ANSI para escribir caracteres ANSI, las consolas no soportan secuencias de escape ANSI. Sin embargo, algunas funciones Win32 proporcionan una funcionalidad equivalente: por ejemplo, SetCursorPos, SetConsoleTextAttribute y GetConsoleCursorInfo.

WriteConsole escribe caracteres al buffer de pantalla en la posición actual del cursor. La posición del cursor avanza tantos caracteres como fueron escritos. La función SetConsoleCursorPosition asigna la posición actual del cursor.

Los caracteres son escritos usando los atributos de color de primer plano y fondo asociados con el buffer de pantalla. La función SetConsoleTextAttribute modifica esos colores. Para determinar los atributos de color actuales y la posición actual del cursor, usar GetConsoleScreenBufferInfo.

Todos los modos de entrada que afectan al comportamiento de WriteFile tienen el mismo efecto sobre WriteConsole. Para recuperar y asignar modos de salida de un buffer de pantalla de consola, usar GetConsoleMode y SetConsoleMode.

Windows NT: Esta función usa tanto caracteres Unicode como caractares de 8 bits del código de página actual de la consola. El código de página se inicializa por defecto al código de página OEM del sistema. Para modificar el código de página de la consola, usar las funciones SetConsoleCP o SetConsoleOutputCP, o usar los comandos chcp o mode con cp select=.