3

在 PyCharm 中,我将终端设置为 Windows PowerShell,但是当我尝试在该终端中使用 virtualenv 时:

Import-Module virtualenvwrapper

(我在启动脚本中有此命令,但为简单起见仅包含该命令)

我收到以下错误:

Import-Module : File C:\Users\Sean\Documents\WindowsPowerShell\Modules\virtualenvwrapper\support.psm1 cannot be loaded because the execution of scripts is disabled on this system. Please see "get-help about_signing" for more details.
At line:1 char:14
+ Import-Module <<<<  virtualenvwrapper
    + CategoryInfo          : NotSpecified: (:) [Import-Module], PSSecurityException
    + FullyQualifiedErrorId : RuntimeException,Microsoft.PowerShell.Commands.ImportModuleCommand

所以我尝试启用脚本执行(就像我在PyCharm之外对 PowerShell 所做的那样):

Set-ExecutionPolicy RemoteSigned

但是得到以下错误(我通过以管理员身份运行 PowerShell 在 PyCharm 之外避免了这个错误):

Set-ExecutionPolicy : Access to the registry key 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell' is denied.
At line:1 char:20
+ Set-ExecutionPolicy <<<<  RemoteSigned
    + CategoryInfo          : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand

那么我该怎么做才能从 PyCharm 终端使用 virtualenv 呢?

  • Windows 7的
  • 蟒蛇 2.7
  • PyCharm 社区版 3.0
4

2 回答 2

6

您获得的权限错误是由 Powershell 在计算机上没有管理权限引起的。快速的解决方案是使用Run as Administrator启动 Powershell 。从那里,您可以使用Set-ExecutionPolicy.

Set-ExecutionPolicy RemoteSigned

此外,您可能需要在调用时使用 -Scope 参数Set-ExecutionPolicy。有时在子进程中运行 Powershell 时,使用的执行策略与单独运行 powershell 时不同。

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
于 2013-09-29T02:43:02.527 回答
0

另一种方式.. 如果您可以选择使用UAC - 用户访问控制,您可以降低以允许执行程序。在域中,这可能会根据 GPO/LGPO 设置。尝试覆盖这些设置时要小心。

于 2013-09-30T03:11:08.520 回答