ZhangZhihui's Blog  

 

PS D:\zprojects> & d:\zprojects\zdab-venv\Scripts\Activate.ps1
& : 无法加载文件 D:\zprojects\zdab-venv\Scripts\Activate.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_P
olicies。
所在位置 行:1 字符: 3
+ & d:\zprojects\zdab-venv\Scripts\Activate.ps1
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

 

这是一个非常经典的 PowerShell 安全策略拦截问题。Windows 为了防止恶意脚本自动运行,默认将执行策略(Execution Policy)设置得比较严格。

你的 VS Code 正在尝试调用虚拟环境的激活脚本,但被系统“挡住了”。


快速解决方法

你只需要以管理员身份放开 PowerShell 的执行权限即可。请按照以下步骤操作:

  1. 在 Windows 任务栏的搜索框输入 PowerShell。

  2. 在搜索结果上右键点击,选择 “以管理员身份运行”。

  3. 在打开的蓝色窗口中,输入并执行以下命令:

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    
  4. 当系统询问是否确认时,输入 Y 并按回车。


命令参数详解

  • RemoteSigned:这意味着本地编写的脚本可以自由运行;但从网上下载的脚本必须有数字签名才能运行。这对开发者来说是最平衡的选择。

  • -Scope CurrentUser:这只针对你当前的 Windows 账号生效,不需要修改全系统的安全策略,更安全且不需要每次都刷管理员权限。

 

posted on 2026-03-25 14:19  ZhangZhihuiAAA  阅读(85)  评论(0)    收藏  举报