title: launch process from Session 0 Isolation
body: <p>On Windows 8.1 I have a service that starts PowerShell scripts.
  The service runs as “nt authority\system” in Session 0 Isolation.
  Any process that I spawn from PowerShell runs as “nt authority\system” in Session 0 Isolation.</p>
  
  <p>I need to run a script that is under a user account out of session 0 and not the system account.
  I have tried this</p>
  
  <pre><code>Start-Process "$PsHome\PowerShell.exe" -Credential $pp -ArgumentList $script  -wait 
  </code></pre>
  
  <p>and PsExec specifying which session I want with "-I 1" argument. </p>
  
  <pre><code>&amp; PsExec.exe "Install.bat" -i 1 -accepteula -u "domain\user" -p "awesomePassword" -w "startdir" -h
  </code></pre>
  
  <p>I have tried setting "Allow service to interact with desktop". </p>
  
  <p>I keep getting Access is denied errors when I try and start the process either from PowerShell or from the c# service.</p>
  
  <p>Here is an example exception when I try to escape using c# on the service.</p>
  
  <pre><code>System.ComponentModel.Win32Exception (0x80004005): Access is denied
     at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
  </code></pre>
  
  <p>How do I escape from session 0?</p>
  
  <p>I can re-write the c# code to start a process under a different user.
  or I can re-write the called PowerShell script to start another process as a user. 
  No matter what I try, I can't seem to break out of session 0.</p>