title: Does Process.StartInfo.FileName accept long file names?
body: <p>Looks like it's not.</p>
  
  <p>If I convert the file name to its short value, then Process.Start() works.</p>
  
  <pre><code>Process runScripts = new Process();
  runScripts.StartInfo.FileName = @"C:\long file path\run.cmd";
  runScripts.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
  runScripts.StartInfo.UseShellExecute = true;
  runScripts.StartInfo.RedirectStandardOutput = false;
  runScripts.Start();
  </code></pre>
  
  <p>The above code fails. But...</p>
  
  <pre><code>Process runScripts = new Process();
  runScripts.StartInfo.FileName = @"C:\short\file\path\run.cmd";
  runScripts.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
  runScripts.StartInfo.UseShellExecute = true;
  runScripts.StartInfo.RedirectStandardOutput = false;
  runScripts.Start();
  </code></pre>
  
  <p>succeeds.</p>
  
  <p>I managed to get around this by converting the long path name to a short path name.
  But I am a bit surprised to find this.
  Any reasons or background info on this?</p>
  
  <p>Thanks.</p>
  
  <p><b>Update 1</b><br>
  Microsoft .NET Framework Version 2.0.50727</p>