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) |