打包python代码,不能打开子窗口

pyinstaller打包运行exe,不能打开子窗口,点击子窗口按钮后,不能弹出,主窗口自动退出了。但是用代码运行一切都没有问题。请问是什么原因。pyinstaller打包太多坑了。希望指点一下

img

在使用 PyInstaller 打包应用程序时,有时会遇到一些问题。其中,子窗口无法打开并导致主窗口自动退出的问题可能是由于 PyInstaller 的一些设置不正确所导致的。这可能涉及到打包时遗漏了某些文件或配置文件的问题。

下面是一些建议来解决这个问题:

确保在打包应用程序时,包含了所有需要的文件和资源。特别注意检查子窗口所需的任何资源或配置文件是否正确包含在可执行文件中。

检查打包过程中是否有任何错误或警告消息。这些消息可能会提供一些关于为什么子窗口无法打开的线索。

尝试使用 PyInstaller 的一些选项来优化打包过程,例如通过使用 --onefile 选项将输出文件合并为单个可执行文件。

如果子窗口使用了外部文件或库,确保将其正确地包含在打包过程中。这可能需要手动将这些文件复制到正确的位置。

检查子窗口的代码,确保没有与 PyInstaller 不兼容的部分。有时,一些特定的库或操作可能会导致问题。

尝试将日志输出打开,以查看是否有任何错误或异常信息。这可能有助于确定问题的根本原因。

【由 http://www.gpt100.chat/ 生成,人工整理】

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/3011961
  • 这篇博客也不错, 你可以看下Pyinstaller打包的exe之一键反编译py脚本与防反编译
  • 除此之外, 这篇博客: 用Python写一个随机点名系统,并把它打包成exe文件~中的 二、pyinstaller打包成exe 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    PyInstaller是一个跨平台的Python应用打包工具,支持Windows/Linux/MacOS三大主流平台,能够允许用户在没有安装 Python 的情况下执行应用程序。

    pyinstaller安装

    pip install pyinstaller -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
    

    pyinstaller打包python程序

    PyInstaller 最简单使用只需要指定作为程序入口的脚本文件。

    PyInstaller 执行打包程序后会在当前目录下创建下列文件和目录:main.spec 文件,其前缀和脚本名相同,指定了打包时所需的各种参数;build 子目录,其中存放打包过程中生成的临时文件。warnxxxx.txt文件记录了生成过程中的警告/错误信息。如果 PyInstaller 运行有问题,需要检查warnxxxx.txt文件来获取错误的详细内容。xref-xxxx.html文件输出PyInstaller 分析脚本得到的模块依赖关系图。dist子目录,存放生成的最终文件。如果使用单文件模式将只有单个执行文件;如果使用目录模式的话,会有一个和脚本同名的子目录,其内才是真正的可执行文件以及附属文件。

    命令行输入以下代码:

    pyinstaller -F -i .icon图标文件路径 .py文件路径
    

    -F | --onefile:生成单一的可执行文件 -i | --icon:为执行文件指定图标

    默认生成在C盘,找到dist文件夹里的带图标的exe程序,双击运行,正常运行进入程序可以玩说明打包程序成功。

    运行效果如下:

       


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^