title: Problems getting desired output from Process.Start()
body: <p>I am working on an application that calls several command line applications to do some post processing on some video files.  </p>
  
  <p>Right now I am trying to use <a href="http://www.kaashoek.com/comskip/" rel="nofollow noreferrer">Comskip</a> to identify the commercial breaks in a video recording from my cable card tuner.  This runs just fine, but I am having problems getting the screen output that I need.</p>
  
  <pre><code>String stdout = null;
  
  using (var process = new Process())
  {
      var start = new ProcessStartInfo(comskip, cmdLine);
  
      start.WindowStyle = ProcessWindowStyle.Normal;
      start.CreateNoWindow = true;
      start.UseShellExecute = false;
      start.RedirectStandardOutput = true;
  
      process.StartInfo = start;
  
      process.Start();
      process.WaitForExit();
  
      stdout = process.StandardOutput.ReadToEnd();
  }
  </code></pre>
  
  <p>I'm expecting <code>stdout</code> to grab what is displayed on the screen the same as when the application is launched manually (screen shot below) which is a continuous feed of what the application is doing, and mixed in the output are lines that give a % progress, which I want to use to update a progress bar</p>
  
  <p><img src="https://i.stack.imgur.com/AGpxg.png" alt="output from commandline"></p>
  
  <p>But running the above code only gives me:</p>
  
  <blockquote>
    <p>The commandline used was:
    "C:\Users\Chris\Google Drive\Tools\ComSkip\comskip.exe" "C:\Users\Chris\Desktop\ComSkip Tuning Files\Modern Family.wtv" "--ini=C:\Users\Chris\Desktop\ComSkip Tuning Files\comskip_ModernFamily.ini"</p>
    
    <p>Setting ini file to C:\Users\Chris\Desktop\ComSkip Tuning Files\comskip_ModernFamily.ini as per commandline
    Using C:\Users\Chris\Desktop\ComSkip Tuning Files\comskip_ModernFamily.ini for initiation values.</p>
  </blockquote>
  
  <p>I also tried redirecting the <code>StandardError</code> stream and grabbing <code>process.StandardError.ReadToEnd();</code> but the process appears to hang if I run with these options.</p>
  
  <p>Am I missing something to capture what I'm hoping for, or is it possible that the output stream for this application is going somewhere else that is not accessible?</p>