Función FillConsoleOutputCharacter
Importante
En este documento se describe la funcionalidad de la plataforma de consola que ya no forma parte de nuestra hoja de ruta del ecosistema. No se recomienda usar este contenido en nuevos productos, pero seguiremos admitiendo los usos existentes para un futuro indefinido. Nuestra solución moderna preferida se centra en secuencias de terminal virtual para lograr la máxima compatibilidad en escenarios multiplataforma. Puede encontrar más información sobre esta decisión de diseño en nuestro documento de la consola clásica frente al terminal virtual.
Escribe un carácter en el búfer de pantalla de la consola un número especificado de veces, empezando por las coordenadas especificadas.
Sintaxis
BOOL WINAPI FillConsoleOutputCharacter(
_In_ HANDLE hConsoleOutput,
_In_ TCHAR cCharacter,
_In_ DWORD nLength,
_In_ COORD dwWriteCoord,
_Out_ LPDWORD lpNumberOfCharsWritten
);
Parámetros
hConsoleOutput [in]
Identificador del búfer de pantalla de la consola. El identificador debe tener derecho de acceso de GENERIC_WRITE. Para obtener más información, consulte Seguridad y derechos de acceso del búfer de la consola.
cCharacter [in]
Carácter que se escribirá en el búfer de pantalla de la consola.
nLength [in]
Número de celdas de caracteres en las que se debe escribir el carácter.
dwWriteCoord [in]
Una estructura COORD que especifica las coordenadas de caracteres de la primera celda en la que se escribirá el carácter.
lpNumberOfCharsWritten [out]
Un puntero a una variable que recibe el número de caracteres escritos realmente en el búfer de pantalla de la consola.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es distinto de cero.
Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Si el número de caracteres que se van a escribir se extiende más allá del final de la fila especificada en el búfer de pantalla de la consola, se escribirán en la fila siguiente. Si el número de caracteres que se van a escribir se extiende más allá del final del búfer de pantalla de la consola, los caracteres se escriben hasta el final del búfer de pantalla de la consola.
Los valores de atributo de las posiciones escritas no se cambian.
Esta función usa caracteres Unicode o caracteres de 8 bits de la página de códigos actual de la consola. La página de códigos de la consola tiene como valor predeterminado la página de códigos OEM del sistema. Para cambiar la página de códigos de la consola, use las funciones SetConsoleCP o SetConsoleOutputCP. Los consumidores heredados también pueden usar los comandos chcp o mode con cp select=, pero no se recomienda si va a desarrollar algo nuevo.
Sugerencia
Esta API no se recomienda y no tiene un equivalente de terminal virtual específico. No se admite rellenar la región fuera de la ventana visible, ya que está reservada para el espacio de historial del terminal. El rellenado de una región visible con nuevo texto o color se realiza al mover el cursor, establecer los nuevos atributos y, a continuación, escribir el texto deseado para esa región, repetiendo caracteres si es necesario para alcanzar la longitud de la ejecución de relleno. Es posible que se requiera movimiento adicional del cursor seguido de la escritura del texto deseado para rellenar una región rectangular. Se espera que la aplicación cliente mantenga su propia memoria de lo que está en la pantalla y no pueda consultar el estado remoto. Puede encontrar más información en la documentación de la consola clásica en comparación el terminal virtual.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado | ConsoleApi2.h (a través de WinCon.h, incluido Windows.h) |
Biblioteca | Kernel32.lib |
Archivo DLL | Kernel32.dll |
Nombres Unicode y ANSI | FillConsoleOutputCharacterW (Unicode) y FillConsoleOutputCharacterA (ANSI) |