Pyinstaller onedir选项-目录外的exe文件

Pyinstaller onedir option - exe file outside the directory

最近我正在尝试使用 pyinstaller 从我的 Python 脚本创建一个可执行文件。一切都按预期工作。 我测试了两个选项:--onefile,它需要很长时间(比如 20-30 秒)才能启动,因为它将所有内容解压缩到一个临时目录中。 --onedir 选项的启动速度要快得多(4 秒),但使用起来不是很舒服。当我将 exe 文件移出此目录时,程序不再有效。 我的问题是:是否有可能使 exe 文件指向该目录位置?我想将所有 pyinstaller 文件保存在一个地方,并允许用户将 exe 文件放在他们想要的任何位置。 感谢您的帮助。

捷径。创建 .exe 快捷方式。这样原始 .exe 仍然在父目录中,但快捷方式可以放在任何地方

我认为您应该有该 exe 文件所需的其他一些文件,因此当您将 exe 文件移动到目录之外时,它会给您带来错误。示例之一可能是 exe 程序需要 chrome 驱动程序,并且您已将其放置在该目录中。如果将 exe 程序移到外面,则需要将 chrom 驱动程序也放在新位置。希望对大家的检测有所帮助,否则只要不需要其他文件的依赖,我们就可以在任何地方使用exe程序。

让我们看一个真实的生产案例。每当您下载盗版游戏或软件的原始副本时,通常会将它们压缩在一起。当您解压缩它们时,将提取一个新文件夹,并且在该文件夹内还有许多其他文件夹。您对 运行 软件所做的只是双击 .exe 文件。

你的情况也是一样的。如果您将 exe 文件移到原始解压缩文件夹之外,那么它根本不起作用。因此,解决方法是创建 exe 文件的快捷方式。

希望这能澄清您的疑问:)