Partager via


Fonction WriteConsoleInput

Important

Ce document décrit les fonctionnalités de la plateforme de console qui ne font plus partie de notre feuille de route de l’écosystème. Nous vous déconseillons d’utiliser ce contenu dans de nouveaux produits, mais nous continuerons prendre en charge des utilisations existantes pour l’avenir indéterminé. Notre solution moderne préférée se concentre sur les séquences de terminal virtuel pour une compatibilité maximale dans les scénarios multiplateformes. Vous trouverez plus d’informations sur cette décision de conception dans notre document console classique versus terminal virtuel.

Écrit des données directement dans la mémoire tampon d’entrée de la console.

Syntaxe

BOOL WINAPI WriteConsoleInput(
  _In_        HANDLE       hConsoleInput,
  _In_  const INPUT_RECORD *lpBuffer,
  _In_        DWORD        nLength,
  _Out_       LPDWORD      lpNumberOfEventsWritten
);

Paramètres

hConsoleInput [entrée]
Un handle vers la mémoire tampon d’entrée de console. Le handle doit avoir le droit d’accès GENERIC_WRITE. Pour plus d’informations, consultez Sécurité de la mémoire tampon et droits d’accès d’une console.

lpBuffer [entrée]
Un pointeur vers un tableau de structures INPUT_RECORD qui contiennent des données à écrire dans la mémoire tampon d’entrée.

nLength [entrée]
Nombre d’enregistrements d’entrée à écrire.

lpNumberOfEventsWritten [sortie]
Un pointeur vers une variable qui reçoit les enregistrements d’entrée réellement écrits.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Notes

WriteConsoleInput place les enregistrements d’entrée dans la mémoire tampon d’entrée derrière les événements en attente dans la mémoire tampon. La mémoire tampon d’entrée augmente dynamiquement, si nécessaire, pour contenir autant d’événements que ce qui est écrit.

Cette fonction utilise des caractères Unicode ou des caractères 8 bits de la page de codes actuelle de la console. Par défaut, la page de codes de la console est initialement définie sur la page de codes OEM du système. Pour changer la page de codes de la console, utilisez les fonctions SetConsoleCP ou SetConsoleOutputCP. Les consommateurs existants peuvent également utiliser les commandes chcp ou mode con cp select=, mais ce n’est pas recommandé pour un nouveau développement.

Conseil

Cette API n’est pas recommandée et n’a pas d’équivalent au terminal virtuel. Cette décision aligne intentionnellement la plateforme Windows avec d’autres systèmes d’exploitation. Cette opération est considérée comme le verbe à direction inverse pour cette mémoire tampon. Le remoting des applications via des utilitaires multiplateformes et des transports comme SSH peut ne pas fonctionner comme prévu si vous utilisez cette API.

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête ConsoleApi2.h (via WinCon.h, inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll
Noms Unicode et ANSI WriteConsoleInputW (Unicode) et WriteConsoleInputA (ANSI)

Voir aussi

Fonctions de console

INPUT_RECORD

Fonctions d’entrée de console de bas niveau

MapVirtualKey

PeekConsoleInput

ReadConsoleInput

SetConsoleCP

SetConsoleOutputCP

VkKeyScan