乐趣区

关于python:pyinstaller打包的exe在win7运行时提示缺少apimswincorepathl110dll

一、问题形容

  1. 在 win10 零碎 +python3.9 环境中,用 pyinstaller 打包应用程序;
  2. 在 win7 零碎运行此程序,提醒‘短少 api-ms-win-core-path-l1-1-0.dll’;
  3. (win7 零碎中)下载 api-ms-win-core-path-l1-1-0.dll 并放在 system32 文件夹下,再次运行应用程序,不再呈现弹窗报错,但程序仍产生闪退。

二、解决办法(以下未特地指出的均为在 win10 零碎中进行)

  1. 下载安装 32 位的 Anaconda;
    【附】若已装置了 64 位的,则可关上 Anaconda Prompt,通过命令行 set CONDA_FORCE_32BIT=1 将环境 临时 切换为 32 位;(conda info可查看以后环境信息)
  2. 在 Anaconda Prompt 中,通过conda create -n python37 python=3.7 创立 python3.7 的环境;
  3. 通过 activate python37 切换到该环境下,装置所需模块,并再次打包; 可在 pycharm 中进行以下步骤:

    • 将 conda 现有环境中的 python 解释器增加到 pycharm 中并利用;
    • 间接装置模块,或在 pycharm 终端中通过 conda activate python37 激活环境,再通过 pip install 装置依赖模块和 pyinstaller 模块;
  4. 在此环境中打包的 exe 就能够在 win7 中运行了。
退出移动版