Bonjour,
Je vous expose mon probleme : je souhaiterai récupérr une fenetre cmd déjà ouverte afin d'écrire à l'interieur (afin d'afficher des informations de debug). J'arrive déjà à réaliser cela a partir d'une fenetre cmd que je lance moi meme à l'aide de la classe Process, mais bien que j'arrive à récuperer une fentre de commande existante, je n'arrive pas à écrire dedans.
Voici une portion de code que j'utilise :
Ce code lève une InvalidOperationException. Si je deporte les deux dernieres lignes au moment où je clique sur un bouton par exemple, aucune exception n'est levée mais la console n'affiche rien... Avez-vous une idée ? J'ai trouvé beaucoup de tuto (tous) qui expliquent comment lire et ecrire dans les flux d'un processus qu'on lance mais aucun qui montre comment faire dans le cas d'un processus deja en cours d'execution.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 System.Diagnostics.Process[] consoleProcesses = Process.GetProcessesByName("cmd"); if (consoleProcesses.Length > 0){ Process consoleProcess = consoleProcesses[0]; consoleProcess.StartInfo.UseShellExecute = false; consoleProcess.StartInfo.RedirectStandardInput = true; consoleProcess.StandardInput.WriteLine("Essai d'ecriture dans la console"); consoleProcess.StandardInput.Flush(); }
Merci par avance
Partager