Partager via


Fonction ReadConsoleOutputCharacter

Important

Ce document décrit les fonctionnalités de la plateforme de la console qui ne font plus partie de la feuille de route de notre é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 terminaux virtuels pour une compatibilité maximale dans les scénarios multiplateformes. Vous trouverez plus d’informations sur cette décision de conception dans notre document sur les consoles classiques et les terminaux virtuels.

Copie un certain nombre de caractères à partir de cellules consécutives d’une mémoire tampon de l’écran de la console, en commençant à un emplacement spécifié.

Syntaxe

BOOL WINAPI ReadConsoleOutputCharacter(
  _In_  HANDLE  hConsoleOutput,
  _Out_ LPTSTR  lpCharacter,
  _In_  DWORD   nLength,
  _In_  COORD   dwReadCoord,
  _Out_ LPDWORD lpNumberOfCharsRead
);

Paramètres

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

lpCharacter [sortie]
Un pointeur vers une mémoire tampon qui reçoit les caractères lus à partir de la mémoire tampon de l’écran de la console.

nLength [entrée]
Le nombre de cellules de caractères de mémoire tampon d’écran à partir desquelles lire. La taille de la mémoire tampon pointée par le paramètre lpCharacter doit être nLength * sizeof(TCHAR).

dwReadCoord [entrée]
Les coordonnées de la première cellule de la mémoire tampon de l'écran de la console à partir de laquelle lire, en caractères. Le membre X de la structure COORD est la colonne et le membre Y est la ligne.

lpNumberOfCharsRead [sortie]
Un pointeur sur une variable qui reçoit le nombre de caractères réellement lus.

Valeur renvoyé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

Si le nombre de caractères à lire dépasse la fin de la ligne de la mémoire tampon de l'écran spécifiée, les caractères sont lus à partir de la ligne suivante. Si le nombre de caractères à lire dépasse la fin de la mémoire tampon de l'écran de la console, les caractères jusqu'à la fin de la mémoire tampon de l'écran de la console sont lus.

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 de terminal virtuel. Cette décision aligne intentionnellement la plateforme Windows avec d’autres systèmes d’exploitation où l’application cliente individuelle est censée mémoriser son propre état dessiné pour une manipulation supplémentaire. La communication à distance 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, include Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll
Noms Unicode et ANSI ReadConsoleOutputCharacterW (Unicode) et ReadConsoleOutputCharacterA (ANSI)

Voir aussi

Fonctions de console

COORD

Fonctions de sortie de console de bas niveau

ReadConsoleOutput

ReadConsoleOutputAttribute

SetConsoleCP

SetConsoleOutputCP

WriteConsoleOutput

WriteConsoleOutputAttribute

WriteConsoleOutputCharacter