Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Il existe deux approches différentes des E/S de console, dont le choix dépend de la flexibilité et du contrôle d’une application. L’approche générale permet des E/S de flux de caractères simples, mais elle limite l’accès aux mémoires tampons d’entrée et d’écran d’une console. L’approche de bas niveau nécessite que les développeurs écrivent davantage de code et choisissent parmi une plus grande gamme de fonctions, mais il offre également une plus grande flexibilité à l’application.
Remarque
L’approche de bas niveau n’est pas recommandée pour le développement nouveau et continu. Les applications qui ont besoin de fonctionnalités à partir des fonctions d’E/S de console de bas niveau sont encouragées à utiliser des séquences de terminal virtuel et à explorer notre documentation sur les fonctions classiques plutôt que sur le terminal virtuel et la feuille de route de l’écosystème.
Une application peut utiliser les fonctions d’E/S de fichier, ReadFile et WriteFile, ainsi que les fonctions de console, ReadConsole et WriteConsole, pour les E/S de haut niveau qui fournissent un accès indirect aux mémoires tampons d’entrée et d’écran d’une console. Les fonctions d’entrée de haut niveau filtrent et traitent les données dans la mémoire tampon d’entrée d’une console pour retourner l’entrée en tant que flux de caractères, en ignorant l’entrée de redimensionnement de la souris et de la mémoire tampon. De même, les fonctions de sortie de haut niveau écrivent un flux de caractères affichés à l’emplacement actuel du curseur dans une mémoire tampon d’écran. Une application contrôle la façon dont ces fonctions fonctionnent en définissant les modes d’E/S d’une console.
Les fonctions d’E/S de bas niveau fournissent un accès direct aux mémoires tampons d’entrée et d’écran d’une console, ce qui permet à une application d’accéder aux événements d’entrée et de redimensionnement des mémoires tampons et des informations étendues pour les événements clavier. Les fonctions de sortie de bas niveau permettent à une application de lire ou d’écrire dans un nombre spécifié de cellules de caractères consécutives dans une mémoire tampon d’écran, ou de lire ou d’écrire dans des blocs rectangulaires de cellules de caractères à un emplacement spécifié dans une mémoire tampon d’écran. Les modes d’entrée d’une console affectent les entrées de bas niveau en permettant à l’application de déterminer si les événements de redimensionnement de la souris et de la mémoire tampon sont placés dans la mémoire tampon d’entrée. Les modes de sortie d’une console n’ont aucun effet sur la sortie de bas niveau.
Les méthodes d’E/S de haut niveau et de bas niveau ne sont pas mutuellement exclusives et une application peut utiliser n’importe quelle combinaison de ces fonctions. En règle générale, toutefois, une application utilise une approche ou l’autre exclusivement et nous vous recommandons de nous concentrer sur un paradigme particulier pour obtenir des résultats optimaux.
Conseil / Astuce
L’application à l’avenir idéale se concentre sur les méthodes de haut niveau et augmente les besoins supplémentaires avec les séquences de terminal virtuel via les méthodes d’E/S de haut niveau si nécessaire, en évitant entièrement l’utilisation de fonctions d’E/S de bas niveau.
Les rubriques suivantes décrivent les modes de console et les fonctions d’E/S de haut niveau et de bas niveau.
- Console Modes
- E/S de la consoleHigh-Level
- modes de console High-Level
- fonctions d’entrée et de sortie de la consoleHigh-Level
- Séquences de terminal virtuel de console
- Fonctions classiques et séquences de terminal virtuel
- Feuille de route de l’écosystème
- E/S de la consoleLow-Level
- modes de consoleLow-Level
- Fonctions d’entrée de console de bas niveau
- fonctions de sortie de la consoleLow-Level