J'utilise la bibliothèque externe (.dll), certaines de ses méthodes (y compris les constructeurs) écrivent du contenu sur la sortie standard (console a.k.a) car elle était destinée à être utilisée avec des applications console. Cependant j'essaye de l'incorporer dans mes applications de formes de fenêtres, ainsi je voudrais capturer cette sortie et l'afficher d'une manière que j'aime. C'est à dire. "statut" champ de texte dans ma fenêtre. Tout ce que j'ai pu trouver était ProcessStartInfo.RedirectStandardOutput, mais apparemment, il ne correspond pas à mes besoins, car il est utilisé avec une application supplémentaire (.exe) dans les exemples. Je n'exécute pas d'applications externes, j'utilise juste une bibliothèque dll.Capturer le contenu de la sortie standard en C#
Répondre
Créer une StringWriter
et définissez la sortie standard à elle.
StringWriter stringw = new StringWriter();
Console.SetOut(stringw);
Maintenant, quoi que ce soit imprimé à la console sera insérée dans le StringWriter, et vous pouvez obtenir son contenu à tout moment en appelant stringw.ToString()
alors vous pourriez faire quelque chose comme textBox1.AppendText(stringw.ToString());
(puisque vous avez dit que vous aviez un WinForm et avait un statut champ de texte) pour définir le contenu de votre zone de texte.
L'utilisation de la méthode Console.SetOut vous rapprochera-t-elle suffisamment de ce que vous recherchez?
Il vous donnerait la possibilité d'obtenir le texte écrit sur la console dans un flux que vous pourriez écrire quelque part de toute façon.
http://msdn.microsoft.com/en-us/library/system.console.setout.aspx
Extrait du lien ci-dessus:
Console.WriteLine("Hello World");
FileStream fs = new FileStream("Test.txt", FileMode.Create);
// First, save the standard output.
TextWriter tmp = Console.Out;
StreamWriter sw = new StreamWriter(fs);
Console.SetOut(sw);
Console.WriteLine("Hello file");
Console.SetOut(tmp);
Console.WriteLine("Hello World");
sw.Close();
- 1. Capture du contenu de la sortie standard en Java
- 2. Capturer la sortie standard en Gradle 0,8 construit
- 3. Comment puis-je capturer la sortie standard de clojure?
- 4. cout (sortie standard) en C++
- 5. Comment capturer la sortie du processus en C?
- 6. Comment capturer la sortie de la commande Shell en C#?
- 7. C# sortie standard readtoEnd()
- 8. Comment capturer la sortie/l'erreur standard d'un processus?
- 9. Entrée et sortie standard en c
- 10. GZipping de l'entrée standard à la sortie standard en Java
- 11. Impossible de capturer la sortie standard du processus à l'aide de Boost.Process
- 12. Modification de la sortie standard en Java
- 13. rediriger la sortie standard dans c puis réinitialiser la sortie standard
- 14. Comment capturer une sortie de processus binaire en C# /. NET
- 15. Capturer le contenu de <select>
- 16. Exécuter la procédure stockée en C#, passer les paramètres et capturer le résultat de la sortie
- 17. capturer le contenu de la mise en page comme image
- 18. Comment capturer la sortie d'execvp
- 19. comment capturer la sortie 'mount'
- 20. Java IO entréestream bloque en lisant la sortie standard et l'erreur standard d'un programme externe C
- 21. Comment capturer la sortie standard sur iPhone? (à des fins de développement)
- 22. capturer la sortie d'une action de contrôleur
- 23. Comment capturer la sortie de streaming en python de subprocess.communicate()
- 24. Méthode de sortie standard
- 25. VB.NET lire sortie standard
- 26. Comment lier l'entrée et la sortie standard avec C#?
- 27. Comment puis-je capturer la sortie de pkgrm en Perl?
- 28. Comment rediriger la sortie standard de tout le contenu d'un script shell vers un fichier journal?
- 29. Sortie partiellement lue de la sortie standard d'un autre processus créé à partir de l'application C#
- 30. Évaluation des lignes de la sortie standard