【问题标题】:Pyinstaller .exe unpacks to ...\local\Temp but then cannot find python37.dllPyinstaller .exe 解压到 ...\local\Temp 但找不到 python37.dll
【发布时间】:2021-03-08 15:41:36
【问题描述】:

我正在使用 pyinstaller v4.0 创建一个 --onefile 以在 Win 7 和 Win 10 机器上执行。 Win 7 机器可以是 32 位或 64 位。我用来构建.exe(运行pyinstaller)的机器上安装的唯一python版本是Python v3.7.9 32位。 要创建 .exe,我只是在使用:

pyinstaller --onefile scriptname.py

我将生成的 .exe 从 pyinstaller dist 文件夹复制到 Win 7 和 Win 10 机器,在大多数情况下,它运行得很好;但是在 3 台不同的机器上,当我尝试运行 .exe 时会抛出此错误:

“加载 Python DLL 'C:\Users\username\AppData\Local\Temp_MEI3dddd\python37.dll' 时出错。 LoadLibrary: 找不到指定的模块。”

请注意,上面引用的“dddd”在不同的机器上可能是不同的 4 位数字。

我已经确认路径中的目录“_MEI3dddd”确实被解压到了 Temp 目录,我什至能够打开“_MEI3dddd”目录足够长的时间来看到 python37.dll 在那里.

我已确认路径中文件夹的权限正确,允许执行用户完全访问。

谁能建议我缺少什么?

【问题讨论】:

    标签: python-3.x pyinstaller


    【解决方案1】:

    我找到了解决办法。为了解决这个问题,我用 Win 7 SP1 32 位操作系统启动了一个 VM,安装了 Python 3.7.9 32 位和 pyinstaller。 从那里开始,只需在该 VM 上构建 --onefile 并将生成的 .exe 从 pyinstaller dist 文件夹复制到其他目标机器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-11
      • 2016-06-24
      • 2017-12-08
      • 2019-02-06
      • 1970-01-01
      • 2020-11-26
      • 2022-12-22
      • 1970-01-01
      相关资源
      最近更新 更多