为什么将 Powershell 设置为 set-executionpolicy remotesigned 会失败?

为什么将 Powershell 设置为 set-executionpolicy remotesigned 会失败?

使用 Win7-32​​bit 和 Powershell ISE,我尝试运行刚刚保存的脚本(假设包含一个简单的 cls)。我收到错误,使用通常的“get-help about_signing”建议禁止执行脚本。

当使用“set-executionpolicy remotesigned”来解决时,我得到了一个对话框来验证我是否确定。但如果我接受,就会出现另一个错误:

acces to registry key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell" denied
    + set-executionpolicy <<<<  remotesigned
        + CategoryInfo          : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
        + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand

我该怎么做才能以用户身份运行已保存的脚本(或将其作为日常服务自动化)?

答案1

您需要以管理员身份运行powershell来设置执行策略。

一旦将其设置为 remotesigned,您就可以以普通用户身份运行 powershell。

答案2

只需转到控制面板->管理工具->Windows PowerShell 模块(打开 powershell)并输入常用的set-executionpolicy remotesigned。就是这样。

答案3

我通过将权限直接添加到 Windows 注册表找到了解决方案。

在这里写道:Powershell 101

希望这可以帮助。

相关内容