You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

微软商店版Windows Python无法运行PyInstaller,无权限求解决

解决Microsoft Store版Python运行PyInstaller的WinError 1920问题

方案1:修改PyInstaller的兼容性检测代码

你的虚拟环境里的PyInstaller在检测Microsoft Store版Python时,会尝试读取重定向的python.exe文件大小(该文件是0字节的快捷方式),触发系统权限错误。可以直接绕过这个检测:

  • 找到虚拟环境中的PyInstaller配置文件:venv/lib/site-packages/PyInstaller/compat.py
  • 打开文件,定位到第166行左右的代码:
    is_ms_app_store = is_win and os.path.getsize(python_executable) == 0
    
  • 将其修改为:
    is_ms_app_store = False
    
  • 保存文件后,重新运行python -m PyInstaller即可。

方案2:使用无需安装的便携版Python

无需管理员权限,直接使用便携版Python创建独立环境:

  • 下载对应版本的Python嵌入式压缩包(比如Python 3.7的embeddable zip包),解压到你有权限读写的目录(如个人文档文件夹)
  • 打开解压后的目录,找到python.exe,用它创建新的虚拟环境:
    path/to/portable/python.exe -m venv my_new_venv
    
  • 激活新虚拟环境:
    my_new_venv\Scripts\activate.bat
    
  • 安装PyInstaller:
    pip install pyinstaller
    
  • 用这个环境运行PyInstaller打包你的脚本即可。

方案3:直接调用真实的Python可执行文件

Microsoft Store版Python的真实可执行文件位于C:\Program Files\WindowsApps目录下,尝试直接用该路径运行PyInstaller:

"C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.2544.0_x64__qbz5n2kfra8p0\python.exe" -m PyInstaller your_script.py

注意替换命令中的Python版本路径和你的脚本文件名。

内容的提问来源于stack exchange,提问作者qwerty_99

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 10:27:31