Shaitan00 Posted July 23, 2007 Posted July 23, 2007 I am launching a process from which I need to capture the Output (typically what you would see if run at the command line) - so I did some digging and found that you can redirect standard output to a stream (which is exactly what I needed). The some problems arose, specifically I need to ensure the process is hidden (I don't want a command shell opening on top or showing at all, to ensure the ensure can not kill the process by hitting X and for estetics) but it seems to use RedirectStandardOutput I need to ensure that UseShellExecute=false and somehow this now makes the command window appear on screen (as it didn't before I started to try and get my output to redirect. Process pProcess = new System.Diagnostics.Process(); pProcess.StartInfo.FileName = sFileName; pProcess.StartInfo.Arguments = sParameter; pProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; pProcess.StartInfo.UseShellExecute = false; pProcess.StartInfo.RedirectStandardOutput = true; pProcess.Start(); pProcess.WaitForExit(); // Display returned console information if any StreamReader srOut = pProcess.StandardOutput; string sOutput = srOut.ReadToEnd(); srOut.Close(); pProcess.Close(); Why can't I hide the window anymore? Is there another way to do this? I really need to get the output from the process but I don't want it to appear on screen. Any help would be greatly appreciated. Thanks, Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.