![为什么将 Powershell 设置为 set-executionpolicy remotesigned 会失败?](https://linux22.com/image/1243221/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%B0%86%20Powershell%20%E8%AE%BE%E7%BD%AE%E4%B8%BA%20set-executionpolicy%20remotesigned%20%E4%BC%9A%E5%A4%B1%E8%B4%A5%EF%BC%9F.png)
使用 Win7-32bit 和 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
。就是这样。