VSCode执行py命令提示‘Access is denied’的排查求助
解决py命令仍调用已卸载Python3.12并提示权限拒绝的问题
问题原因
卸载Python3.12后,py启动器的配置文件仍残留3.12的路径指向,或者WindowsApps目录下存在未清理的Python3.12残留项,导致执行py命令时仍试图访问已失效的路径,触发权限拒绝错误。
解决步骤
检查并修正py启动器配置
- 打开CMD执行
py -0p,查看当前py启动器识别的Python版本列表,确认是否还有3.12的条目。 - 定位py启动器的配置文件:通常在
%LOCALAPPDATA%\py.ini、%APPDATA%\py.ini或C:\Windows\py.ini。 - 打开配置文件,删除所有包含Python3.12的配置项,保存后关闭。
- 再次执行
py -0p,确认3.12的条目已移除。
- 打开CMD执行
清理WindowsApps目录残留
- 结束所有Python相关进程(包括VSCode终端进程)。
- 打开PowerShell,执行以下命令查找残留的Python3.12应用包:
Get-AppxPackage *PythonSoftwareFoundation.Python.3.12* - 如果返回结果,执行卸载命令:
Remove-AppxPackage *PythonSoftwareFoundation.Python.3.12* - 手动删除
C:\Program Files\WindowsApps下对应的Python3.12文件夹(需先获取文件夹所有权:右键→属性→安全→高级→更改所有者为当前用户,勾选替换子容器所有者,应用后再删除)。
重置VSCode终端环境
- 关闭VSCode所有终端窗口,重启VSCode。
- 通过命令面板的
Python: Select Interpreter重新选择3.11.x版本。 - 在新终端执行
py --version,验证是否切换到3.11.x。
修复py启动器关联
如果以上步骤无效,重新安装Python3.11.x,安装时务必勾选「Add Python to PATH」和「Install py launcher」选项,覆盖修复启动器配置。
内容的提问来源于stack exchange,提问作者johny why
相关产品推荐
相关产品推荐

