Re ouverture de la sortie standard

Résolu
julxerab Messages postés 9 Date d'inscription mercredi 28 mai 2003 Statut Membre Dernière intervention 21 avril 2006 - 2 févr. 2006 à 00:33
julxerab Messages postés 9 Date d'inscription mercredi 28 mai 2003 Statut Membre Dernière intervention 21 avril 2006 - 2 févr. 2006 à 19:04
Salut,



J'aimerais savoir comment récupperer la sortie standard apres un dup2(fd, STDOUT_FILENO);
fd étant le descripteur d'un fichier fichier..

peut-on ré-ouvrir la sortie standard apres l'avoir fermée? si oui comment faut-il faire?



2 réponses

cs_bouba Messages postés 518 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 novembre 2007 3
2 févr. 2006 à 15:57
Salut, voici par exemple un ptit bout de code qui ferme la sortie standard et la réouvre.
int newfd;
newfd = dup(1);
cout << newfd << "\n";
close(1);
cout << "Rien ne s'affiche le descripteur 1 est fermé\n" << flush;
cerr << dup(newfd) << "\n" << flush;
close(newfd);
cout << "Maintenant c'est bon, le descripteur 1 est réouvert\n" << flush;

Par contre, fait gaffe, y'a certains problèmes de buffers avec les sorties sur console.

Bonne chance.

Bouba
3
julxerab Messages postés 9 Date d'inscription mercredi 28 mai 2003 Statut Membre Dernière intervention 21 avril 2006
2 févr. 2006 à 19:04
merci pour ton code!
ça marche

---------------------------------------------------
reset by peer
0