Compartir a través de


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)

Consulte también

Funciones de la consola

INPUT_RECORD

Funciones de entrada de la consola de bajo nivel

MapVirtualKey

PeekConsoleInput

PeekConsoleInput

SetConsoleCP

SetConsoleOutputCP

VkKeyScan