Función WriteConsoleInput
Importante
En este documento se describe 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 en 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 Comparación de consola clásica y terminal virtual.
Escribe datos directamente en el búfer de entrada de la consola.
Sintaxis
BOOL WINAPI WriteConsoleInput(
_In_ HANDLE hConsoleInput,
_In_ const INPUT_RECORD *lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsWritten
);
Parámetros
hConsoleInput [in]
Identificador del búfer de entrada 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.
lpBuffer [in]
Un puntero a una matriz de estructuras INPUT_RECORD que contienen datos que se van a escribir en el búfer de entrada.
nLength [in]
El número de registros de entrada que se van a escribir.
lpNumberOfEventsWritten [out]
Un puntero a una variable que recibe el número de registros de entrada escritos realmente.
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
WriteConsoleInput coloca los registros de entrada en el búfer de entrada detrás de los eventos pendientes en el búfer. El búfer de entrada crece dinámicamente, si es necesario, para contener tantos eventos como se escriben.
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. Esta decisión alinea intencionadamente la plataforma Windows con otros sistemas operativos. Esta operación se considera el verbo con dirección incorrecta para este búfer. Es posible que las aplicaciones que se comunican remotamente a través de utilidades multiplataforma y transportes, como SSH, no funcionen según lo previsto si se usa esta API.
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 | WriteConsoleInputW (Unicode) y WriteConsoleInputA (ANSI) |