Fonction readFile sur un exe contenant un sleep() [Résolu]

Messages postés
8
Date d'inscription
mercredi 12 mars 2008
Statut
Membre
Dernière intervention
4 septembre 2009
- - Dernière réponse : olivierroyo
Messages postés
8
Date d'inscription
mercredi 12 mars 2008
Statut
Membre
Dernière intervention
4 septembre 2009
- 4 sept. 2009 à 14:13
Bonjour a tous,
j'essaye de lire un exe tout simple:
for(int i = 0; i < 9000; i++)
{
   cout << "#output numero: " ;
   cout << i+1 ;		
   Sleep(1000); //cannot read wen sleeping
}


sans le sleep tout va bien, mais des qu'il est actif le ReadFile me renvoie un:
ERROR_NO_DATA (error 232: The pipe is being closed)

pour info en remplacant le sleep par une grande boucle
for(int j = 0; j < 100000000; j++)
{
//a kind of wait
}

le resultat est le meme.

Quelqu'un aurait une explication ou une solution?
merci!!
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
8
Date d'inscription
mercredi 12 mars 2008
Statut
Membre
Dernière intervention
4 septembre 2009
3
Merci
ok j'ai trouvé:
il fallait vider le cout apres le sleep:
cout.flush();

voila...

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 142 internautes nous ont dit merci ce mois-ci

Commenter la réponse de olivierroyo
Messages postés
3982
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
8
0
Merci
Salut,

Impossible de reproduire sous gcc. Plus d'info svp.

#include <windows.h>
#include 

using namespace std;

int main()
{
  for(int i = 0; i < 9000; i++)
  {

     cout << "#output numero: " ;

     cout << i+1 ;		

     Sleep(1000); //cannot read wen sleeping

  }

  return 0;
}
Commenter la réponse de cs_rt15