python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > pyinstaller打包后偶尔出现黑窗口一闪而过

pyinstaller打包后偶尔出现黑窗口一闪而过的问题及解决

作者:苍穹之跃

这篇文章主要介绍了pyinstaller打包后偶尔出现黑窗口一闪而过的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

pyinstaller打包后偶尔出现黑窗口一闪而过

原因

代码中使用了os.system或subprocess等执行了cmd命令。

解决

所有的cmd命令改用subprocess来执行。

import subprocess

重点

在于后面的参数:creationflags=0x08000000

subprocess.check_output(cmd, creationflags=0x08000000)
subprocess.call(cmd, creationflags=0x08000000)

pyinstaller打包黑框闪退,或者没有黑框报错failed to execute script

尝试把之前写的一个软件打包,在cmd用命令

pyinstaller -F -w main.py

结果运行.exe告诉我failed to execute script,查了说可以试试把控制台留下,看看有啥报错信息(一般都是包没导进去,但你不知道是哪个包啊)。

然后我试了,结果控制台是全黑的,然后软件也没有运行,过了一会儿可能就超时自动退出了。于是我又差,有人说可以在cmd里运行一下文件,看看有啥错。

然后我运行之后,居然报错是“找不到 keras 模块”,好家伙,原来我有好几个环境,在现在的环境里打包就是没法运行的。所以用

conda avtivate tf1(你自己的软件所在的环境名)

来切换到写软件的那个环境(保证你安装了conda)。

小结:当你的电脑有多个环境时,打包软件的时候注意在软件依赖的那个环境下运行打包命令。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文