s p*_*s p 5 c# powershell executionpolicy
我使用以下代码成功获取执行策略:
using (var powerShellInstance = PowerShell.Create())
{
    powerShellInstance.AddCommand("Get-ExecutionPolicy");
    Collection<PSObject> obj = powerShellInstance.Invoke();
}
Run Code Online (Sandbox Code Playgroud)
我使用以下代码来设置执行策略:
using (var powerShellInstance = PowerShell.Create())
{
    powerShellInstance.AddCommand("Set-ExecutionPolicy").AddArgument("ByPass");
    powerShellInstance.Invoke();
}
Run Code Online (Sandbox Code Playgroud)
问题是当我从 PowerShell 设置执行策略时,更改在 C# 中不可见。如果我从 C# 设置执行策略,则更改是可见的。
考虑以下场景:
Unrestricted。Bypass。Unrestricted。Bypass.Bypass。范围!
Set-ExecutionPolicy -Scope CurrentUser
Set-ExecutionPolicy -Scope LocalMachine
Set-ExecutionPolicy -Scope MachinePolicy
Set-ExecutionPolicy -Scope Process
Set-ExecutionPolicy -Scope UserPolicy
Run Code Online (Sandbox Code Playgroud)
我相信默认范围是Process(因此是你的问题)
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           514 次  |  
        
|   最近记录:  |