一、问题形容
- 在 win10 零碎 +python3.9 环境中,用 pyinstaller 打包应用程序;
- 在 win7 零碎运行此程序,提醒‘短少 api-ms-win-core-path-l1-1-0.dll’;
- (win7 零碎中)下载 api-ms-win-core-path-l1-1-0.dll 并放在 system32 文件夹下,再次运行应用程序,不再呈现弹窗报错,但程序仍产生闪退。
二、解决办法(以下未特地指出的均为在 win10 零碎中进行)
- 下载安装 32 位的 Anaconda;
【附】若已装置了 64 位的,则可关上 Anaconda Prompt,通过命令行set CONDA_FORCE_32BIT=1
将环境 临时 切换为 32 位;(conda info
可查看以后环境信息) - 在 Anaconda Prompt 中,通过
conda create -n python37 python=3.7
创立 python3.7 的环境; -
通过
activate python37
切换到该环境下,装置所需模块,并再次打包;或 可在 pycharm 中进行以下步骤:- 将 conda 现有环境中的 python 解释器增加到 pycharm 中并利用;
- 间接装置模块,或在 pycharm 终端中通过
conda activate python37
激活环境,再通过pip install
装置依赖模块和 pyinstaller 模块;
- 在此环境中打包的 exe 就能够在 win7 中运行了。