我想把我的应用程序给某个人,但它在他的电脑上不起作用

2024-06-25 23:28:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经构建了一个商店管理系统,并用pyinstaller-fadmin1.py之类的pyinstaller进行了编译。你知道吗

它给了我一个构建文件和一个dist文件,当我在我的电脑上运行应用程序时,它运行得非常好。我已将dist文件夹复制到另一台计算机,但它没有运行,因此我需要将生成文件复制到另一台计算机,或者是将文件复制到其他系统的另一种方法。我只使用tkinter、os模块和datetime模块,但我的程序使用了不同的模块。你知道吗


Tags: 模块文件方法py文件夹应用程序tkinterdist
1条回答
网友
1楼 · 发布于 2024-06-25 23:28:05

我不能评论,因为我没有足够的声誉,但你有任何错误消息从另一台计算机你试图运行这个批处理文件?你知道吗

根据pyinstaller文档的this section,您需要将可执行文件的收件人发送到“build”目录。这是因为构建包含脚本中的所有依赖项。引用有关在一个文件夹中导入的部分(注意:不要担心,我看到了您设置的onefile选项。这正是文档提到您要查询的构建目录的部分):

Another advantage of a one-folder bundle is that when you change your code, as long as it imports exactly the same set of dependencies, you could send out only the updated myscript executable. That is typically much smaller than the entire folder. (If you change the script so that it imports more or different dependencies, or if the dependencies are upgraded, you must redistribute the whole bundle.)

我认为-F仍然会创建一个/build目录(因此您仍然可以跟踪依赖项)。我会把它分享出去,因为它也会和一个文件夹选项分享。Pyinstaller知道寻找Tkinter(也在上面链接的文档中),所以至少你不必担心这个部分。 当您使用onefile时,/dist目录应该是空的,或者至少在我创建可执行文件时是空的。你知道吗

尝试一个文件夹的方法,并将该文件夹发送到任何你需要的计算机。如果这有帮助,请告诉我。你知道吗

TLDR;是,共享生成文件。它包含所有依赖项。dist文件不应包含“-F”选项的任何内容。你知道吗

相关问题 更多 >