问题标签 [py2exe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
5067 浏览

python - py2exe 和文件系统

我有一个 Python 应用程序。它通过执行以下操作加载配置文件(和各种其他文件):

这工作正常。但是,当我用 py2exe 打包应用程序时,会发生不好的事情:

显然,这是一条无效的路径......有什么更强大的方法来做到这一点?我不想在程序中指定绝对路径,因为它可以放在不同的文件夹中。我应该说“如果它说文件夹名称是'library.zip',那么再往下走一层到'dist'文件夹”?

请注意,我有非常嵌套的目录层次结构......例如,我有一个模块 gui.utils.images,存储在“gui/utils/images.py”中,它使用它的路径来访问“gui/images/ok. png”,例如。现在 py2exe 版本会尝试访问“proj/dist/library.zip/gui/images/ok.png”或其他东西,但这是行不通的。

0 投票
2 回答
2392 浏览

python - Python distutils - 带有过滤器的 copy_tree

我想将数据目录复制到我的分发目录中。copy_tree这样做就好了。但是,该项目也是一个 svn 存储库,我不希望发行版包含数据目录拥有的所有 .svn 文件。有什么简单的方法可以copy_tree排除.svn文件,还是我应该编写自己的递归目录副本?我觉得以前一定有人遇到过这个问题。

0 投票
3 回答
566 浏览

python - py2exe 版本的 GTK 应用程序无法读取 png 文件

我正在制作我的应用程序的 py2exe 版本。Py2exe 无法复制一些模块。我的原始应用程序加载.png文件很好,但 exe 版本没有:

知道我应该强制 py2exe 包含什么吗?

0 投票
1 回答
317 浏览

python - 使用 py2exe 捆绑其他可执行文件

我有一个调用两个 Sysinternals 工具(sigcheck 和 accesschk)的 python 脚本。有没有办法可以将这些可执行文件捆绑到 py2exe 中,以便 subprocess.Popen 在运行时可以看到它?


完整说明:我的脚本通过网络共享 (S:\share\my_script.exe) 执行,它对 sigcheck 和 accesscheck 进行了数百次调用。如果 sigcheck 和 accesschk 也驻留在服务器上,它们似乎被转移到主机,调用一次,再次转移主机,第二次调用,一直持续到几乎 400-500 次调用完成。

我可能会回退到将这两个可执行文件复制到主机(C:),然后在完成后删除它们......你将如何解决这个问题?

0 投票
3 回答
3272 浏览

sqlite - 使用 py2exe 时,PyQt 应用程序无法加载 SQlite 数据库

我的 PyQt 应用程序在 Linux 上运行时,在我的 Windows 构建环境中运行时,或者在使用 py2exe 构建它的机器上冻结时运行良好。但是在将冻结的可执行文件及其支持文件移动到另一台机器后,它无法加载数据库驱动程序。

当我拥有 Python2.5 和更早版本的 PyQt 和 py2exe 时,它​​运行良好。但是在升级我的工具链后,我得到了这些错误:

  • dbname.open 返回 false
  • lastError(dbname) 是“未加载驱动程序”

我有一个放置 qsqlite4.dll 的 sqldrivers 文件夹。这对于以前的构建环境是必要的,但移动或重命名该 DLL 不会改变任何行为。我认为这是 Qt 找不到的 DLL,但我无法告诉 Qt 去哪里看。

我目前正在运行这些版本:

  • python-2.6.3
  • PyQt-Py2.6-gpl-4.6-1
  • py2exe-0.6.9.win32-py2.6

Dependency Walker 中的分析给了我这个错误:
LoadLibraryW("\application\sqldrivers\qsqlite4.dll") 返回 NULL。错误:此应用程序无法启动,因为应用程序配置不正确。重新安装应用程序可能会解决此问题 (14001)。
当我向 Dependency Walker 询问有关 Qsqlite4.dll 的详细信息时,它说:
错误:“\application\sqldrivers\QSQLITE4.DLL”的并行配置信息包含错误。

这可以解释为什么 DLL 不会加载,但我仍然不清楚如何修复它。仔细检查显示我调用的大多数 DLL 的错误。我需要为我加载的每个 Qt DLL 包含一个清单吗?

提前致谢。

0 投票
2 回答
3146 浏览

python - 由于缺少 MSVCP90.dll,无法使用 gui2exe 制作 Windows .exe

我正在尝试使用 gui2exe(它使用 py2exe 创建一个 .exe)将我的 python 脚本编译成单个 .exe。我的程序正在使用 wxWidgets,每次我尝试编译它时都会收到以下错误消息:

错误 MSVCP90.dll:没有这样的文件或目录。

我已经下载并安装了 VC++ 可再发行包,所以我应该有这个 .dll 不是吗?

0 投票
1 回答
1220 浏览

pygtk - pygtk + py2exe + Inno Setup -> 快捷方式图标

当我在我的设置文件中执行以下操作时,

Python 崩溃,我无法使用 python setup.py py2exe 运行脚本。

因此,我不使用“windows”中的 icon_resources 字段,而是以 data_file 的形式添加文件,

我正在使用 Inno Setup 来编译 py2exe 创建的 .exe。我尝试访问此文件以添加为快捷方式的图标,使用,

确保我保持ChangesAssociations=yes

即使在尝试此操作后,我也无法查看快捷方式上的图标。有人可以对此有所了解吗?

0 投票
2 回答
5960 浏览

python - 如何使用py2exe减小exe的大小

我使用 python 和 wxwidgets 开发了一个小程序。这是一个非常简单的程序,它只在需要时使用一个迷你框架来显示一些信息,而其余时间它什么也不显示,只在任务栏中显示一个图标。

当我使用 py2exe(单文件 exe 模式,优化)构建 exe 时,我得到一个 6MB 大小的文件!

我尝试不包括一些不需要的库或 dll,但我仍然不明白为什么我会为一个迷你框架和任务栏中的图标获得如此大的文件。

有什么办法可以减少用py2exe生成的exe的大小?

这是我自己做的减少一点:

谢谢。

0 投票
1 回答
3556 浏览

python - Python 服务自定义命令参数

我目前正在开发一个 python 程序,它使用 win32service 和 win32serviceutil 作为 Windows 服务运行。该服务按应有的方式运行,即使在使用 py2exe 之后,一切都很好(该服务监控目标文件夹并自动将 FTP 新创建的文件传输到指定的 FTP 位置)。但是,我想添加一些命令行参数(除了安装、删除、启动、停止等)来指定本地和 FTP 目录。关于这方面的唯一文档是我在以下位置找到的: http: //www.py2exe.org/old/

“或者,您可以为 py2exe 指定一个 'cmdline-style' 属性,有效值为 'py2exe'(默认值)、'pywin32' 或 'custom'。'py2exe' 指定 py2exe 始终支持的传统命令行。 “pywin32”支持与 pywin32 支持的完全相同的命令行参数(即,从 .py 文件运行服务时支持的参数相同。)“自定义”意味着您的模块应提供“HandleCommandLine”函数,该函数是负责所有命令行处理。”

任何帮助将不胜感激指出正确的方向。请让我知道是否需要任何代码以清楚起见。

谢谢,扎克

0 投票
3 回答
5300 浏览

python - Django 可以与 py2exe 一起使用吗?

我们想为大众市场创建一个 Django Intranet 应用程序。我们只需要支持 Windows 用户,并且 Windows 管理员(或“技术用户”)需要非常容易部署(请记住,大多数 Windows 管理员/用户几乎没有 Python 经验等)。

Django + py2exe 是答案吗?我们需要额外的东西还是其他东西?