| auteur : Greybird |
Une application console est une application non graphique. L'interface utilisateur est réduite à une simple fenêtre texte. Les entrées et sorties standards (cin, cout, cerr) sont associées à cette fenêtre.
Notez bien qu'une application console est une application 32bits. Ce n'est donc pas une application DOS qui elle serait 16bits. Une application console ne fonctionnera que sous Windows.
|
| auteur : Geronimo |
Il est vrai que sous Windows, les programmes consoles commencent à disparaître et les interfaces graphiques à prendre de plus en plus d'importance.
Néanmoins, il existe des cas où un programme console est bien plus utile qu'un programme graphique, plus lourd. Par exemple, beaucoup de petits utilitaires sont fournis sous la forme d'un exécutable console par Microsoft. C'est notamment le cas pour un utilitaire permettant de scanner les PCs d'un réseau local pour déterminer quels sont ceux qui n'ont pas installé telle ou telle mise à jour de sécurité.
Il est donc à votre charge de déterminer quel est le mode le plus approprié au programme que vous désirez réaliser.
|
| auteur : Greybird |
Il vous suffit pour cela d'aller dans le menu Fichier | Nouveau | Autre et de sélectionner l'Expert Console.
|
| auteur : Greybird |
Pour utiliser les API Windows dans une application console, il est parfois nécessaire de posséder un Handle sur une des entrées/sorties standards de celle-ci.
Cela se réalise au moyen de l'API GetStdHandle. Cette fonction prend pour unique paramètre :
- STD_INPUT_HANDLE : handle de l'entrée standard (cin)
- STD_OUTPUT_HANDLE : handle de la sortie standard (cout)
- STD_ERROR_HANDLE : handle de la sortie d'erreurs standard (cerr)
Ainsi, le code suivant récupère un handle sur la sortie standard de l'application console :
HANDLE hOut;
hOut = GetStdHandle (STD_OUTPUT_HANDLE);
if (hOut ! = INVALID_HANDLE_VALUE)
{
}
|
|
lien : Qu'est ce qu'un HANDLE ?
|
| auteurs : Greybird, Smortex |
Les applications console n'ont pas l'obligation d'être ternes ! Vous pouvez utiliser les couleurs dans une application console !
Le code suivant vous donne un exemple :
# include <Windows.hpp>
# include <iostream>
using namespace std;
HANDLE hOut;
CONSOLE_SCREEN_BUFFER_INFO csbiAncien;
hOut = GetStdHandle (STD_OUTPUT_HANDLE);
if (hOut ! = INVALID_HANDLE_VALUE)
{
GetConsoleScreenBufferInfo (hOut,& csbiAncien);
SetConsoleTextAttribute (hOut,FOREGROUND_BLUE);
cout < < " Ceci est en bleu\n " ;
SetConsoleTextAttribute (hOut,FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY);
cout < < " Ceci est en jaune\n " ;
SetConsoleTextAttribute (hOut,csbiAncien.wAttributes);
}
|
|
lien : Comment récupérer des handles sur les entrées/sorties standard d'une application console ?
|
Consultez les autres F.A.Q.
|
|
Les sources présentées sur cette page sont libres de droits
et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation
constitue une œuvre intellectuelle protégée par les droits d'auteur.
Copyright © 2009 Developpez Developpez LLC.
Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne
peut être faite de ce site ni de l'ensemble de son contenu : textes, documents
et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez
selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.