Pyinstaller 中的 EXE 文件无法在另一台具有不同 Windows 版本的计算机上运行

问题描述 投票:0回答:2

我已经成功创建了一个可执行文件,该文件可以在我的笔记本电脑上运行(即用于创建它的笔记本电脑) Windows 11 64位,Python 3.9,我使用Pyinstaller使用命令来完成此操作

pyinstaller check_data.py --onefile

效果完美。

但是,它在另一台机器上不起作用,该机器是 Windows 10 64 位且未安装 Python。 .exe 的全部目的是避免在其他计算机上安装 Python。我希望它能在任何地方发挥作用,无论 python 是否存在。 在另一台机器上,它没有给我任何错误,它只是不起作用(我看到黑色提示窗口立即打开和关闭,没有打印任何输出或错误消息)。

您认为这是 Windows 的兼容性问题吗? 有解决方法吗?

我尝试将 python39.dll 文件包含在此处建议的文件夹中https://stackoverflow.com/questions/65704901/pyinstaller-exe-not-working-on-other-computerwith-other-windows-ver 但它不起作用!

提前非常感谢

python windows pyinstaller exe compatibility
2个回答
0
投票

尝试以下任一问题:首先)当您使用 Pyinstaller 时,也许您的脚本使用了一个为“sys.stdout”和“sys.stderr”设置 None 值的库。在脚本开头尝试以下代码。

import sys, io
buffer = io.StringIO()
sys.stdout = sys.stderr = buffer 

第二)将您的 EXE 文件放在您要安装它的同一文件夹中。换句话说,在安装 EXE 文件时不要更改安装路径。


0
投票

我也有同样的问题。 Pyinstaller 没问题。 配置文件格式不正确。异常会停止应用程序。 所以我建议用日志文件的输入来启动代码。如果 exe 生成此日志条目,则稍后似乎会失败并出现异常。添加其他日志文件条目以获取异常发生位置的提示。

© www.soinside.com 2019 - 2024. All rights reserved.