Probleme avec BeginOutputReadLine()

grievous22 Messages postés 2 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 8 août 2010 - 8 août 2010 à 00:22
grievous22 Messages postés 2 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 8 août 2010 - 8 août 2010 à 13:49
Bonjour, Je débute sur ce forum alors j'espère que je poste au bonne endroit. Voila je code depuis peu en visual basic avec
MS visual basic express 2008 (il me semble que c'est du vb.net)
J'ai récemment commencer un programme qui me permet de lancer 3 autre programme(console)
et j'aurais voulut récupérer leurs flux de sortie.
J'ai alors utiliser ceci BeginOutputReadLine()
avec plein de tutorial sur internet expliquant ce qu'il faut faire pour que ce soit asynchrone.
Le problème c'est que cela bug. Mon programme marche étant donné que avec des .bat et .cmd je récupère en temps réel le flux de sortie. Mais la avec ces 3programme(console) je ne récupère rien. J'ai lu sur certain forum que des Flux sortie pouvais être bloquant(et j'aurais voulus savoir si il y avais un risque que ce soit ca et si c'est possible de le débloquer d'une quelconque façon? J'espère que vous saurez me répondre et vous remercie d'avance.
Si ca peut aider voici le site qui m'a servis de tutos pour l'utilisation de BeginOutputReadLine() :http://gilles.tourreau.fr/dotnet_framework/dotnet-recuperer-la-sortie-d-un-processus.htmlSi cela est compté comme de la pub dites le moi je le retirerais

PS:Je rappelle que mon programme marche avec les console que je fait mais pas avec les 3console( donc je n'ai pas le code source).

Cordialement.

1 réponse

grievous22 Messages postés 2 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 8 août 2010
8 août 2010 à 13:49
Re-Bonjour désolé du double poste je n'ai pas trouvé le bouton édité. Je reviens pour poster mes découvertes car j'en fait de temps en temps. J'ai donc découvert que tout ce qui était .bat .cmd ect m'affichait en temps réel(ou a peut près) le flux de sortie(ligne par ligne) grâce au tutoriel cité plus haut. Je me suis donc dis si ca se trouve c'est juste un bug de mes console qui ne m'affiche rien. Et en fait c'est un bug de toute les console en effet j'ai rapidement créer un test.exe qui me fait un helloworld toutes les seconde et j'ai tenter de le lancer avec mon programme(vb.net) et voila ce que j'ai pu remarqué: mon programme n'affiche rien avant que le test.exe n'a pas finis de poster tout les helloworld et quand tout les helloworld on été poster je recoit tout un bloc de helloworld dans mon programme. Ceci est bizzard car la technique que j'utilise est pourtant censé être asynchrone et elle l'est avec les .cmd ou .bat qui m'affiche bien ligne par ligne. La technique ne bug donc qu'avec les console en .exe J'espere que vous pourrez m'aidez. Cordialement.
0
Rejoignez-nous