quelqu'un peut me dire comment frayer une autre application de la console à partir d'une application Winforms, mais (A) montre pas la fenêtre de la console sur l'écran, et (B) toujours obtenir la sortie standard du application? À l'heure actuelle, j'ai quelque chose comme ce qui suit:C#: exécuter le programme de la console externe comme cachée
Process SomeProgram = new Process();
SomeProgram.StartInfo.FileName = @"c:\foo.exe";
SomeProgram.StartInfo.Arguments = "bar";
SomeProgram.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
SomeProgram.StartInfo.UseShellExecute = false;
SomeProgram.StartInfo.RedirectStandardOutput = true;
SomeProgram.Start();
SomeProgram.WaitForExit();
string SomeProgramOutput = SomeProgram.StandardOutput.ReadToEnd();
Si je mets RedirectStandardOutput à false, l'application de la console est cachée comme prévu, mais je ne peux pas obtenir le texte de sortie standard. Cependant, dès que j'ai défini le RedirectStandardOutput sur true, la fenêtre cesse d'être masquée, bien que je puisse obtenir la sortie du programme.
Alors, je sais comment faire fonctionner l'application cachée de la console, et je sais comment obtenir la sortie du programme, mais comment puis-je à faire les deux?
Beaucoup TIA
Quel est le problème avec la solution actuelle? – codymanix
La solution ci-dessus me permet d'obtenir la sortie de l'application console, mais la fenêtre n'est pas cachée. Si je supprime le code pour obtenir la sortie standard, la fenêtre * EST * masquée. Je veux que la fenêtre soit cachée * ET * pour obtenir la sortie standard. – JamesPD