title: How do I ensure C#'s Process.Start will expand environment variables?
body: <p>I'm attempting to create a process like so:</p>
  
  <pre><code>var psi = new ProcessStartInfo
  {
      FileName = @"%red_root%\bin\texturepreviewer.exe",
      UseShellExecute = true
  };
  
  var process = Process.Start(psi);
  process.WaitForExit();
  </code></pre>
  
  <p>Now the environment variable "red_root" definitely exists in the spawned process' environment variables, but the execute doesn't seem to expand the environment variable and so the file isn't found. How can I get the Process.Start to expand the environment variable in the file name?</p>