title: Process.Start() and user impersonation
body: <p>I have a MSI installer custom action which calls <code>Process.Start()</code> to run a batch file which internally does lot of operations and finally calls <code>iisreset</code>. But on few computers, this is failing with access denied error. Interestingly, the user running the MSI can do <code>iisreset</code> from a command prompt. It only fails when executed through my process. </p>
  
  <p>So I am wondering, is <code>Process.Start()</code> spawning new process as the current user with less privileges? If yes, how can I say to run as the same user with all privileges user has? Can any one help me to understand this better and diagnose on why this fails. </p>
  
  <pre><code>MSI created using : Visual Studio 2008
  Server : Windows Server 2008
  UAC Status : Off
  </code></pre>
  
  <p><strong>Error Message</strong></p>
  
  <blockquote>
    <p>Restart attempt failed. Access denied,
    you must be an administrator of the
    remote computer to use this command.
    Either have your account added to the
    administrator local group of the
    remote computer or to the domain
    administrator global group</p>
  </blockquote>
  
  <p>Any help would be appreciated. </p>