title: Set-Execution Policy from process
body: <p>I'm doing a VSTO add in for Outlook in C# that calls PowerShell scripts to interact with the Exchange Online of Office 365.  </p>
  
  <p>It all works perfectly on my windows 10 machine with a machine level unrestricted PowerShell execution policy. However, I can't get this to run on the client's Windows 7 machine.  </p>
  
  <p>I think there are two issues.  One that possibly his windows 7 PowerShell needs to be updated to work with my code, and second that I'm not properly setting the process execution policy. Here was my best effort to get the execution policy set to unrestricted (would bypass be better?).</p>
  
  <pre><code>using (PowerShell PowerShellInstance = PowerShell.Create())
  {
      StringBuilder OSScript = new StringBuilder("Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted;");
      OSScript.Append(@"other really exciting stuff");
      PowerShellInstance.AddScript(OSScript.ToString());
      PowerShellInstance.Invoke();
  } 
  </code></pre>
  
  <p>Could someone point me the right direction?  I know this doesn't work, as if I set the machine policy to restricted the other really exciting stuff doesn't happen, but if I set it to unrestricted then everything works.  </p>