1

我有一个脚本,它使用 py2exe 用于 Windows 32 位Python 2.6,使用 Python 2.6.2。该脚本具有内置的异常处理功能,可以在 Windows 7 64 位系统和 Windows XP 系统上以其编译的 py2exe 可执行格式正常工作,没有错误也没有问题。

但是,当我在 Windows 7 32 位系统上运行可执行文件时,我收到一个弹出错误,内容如下:

有关详细信息,请参阅位于“C:\path\to\directory\program_name.exe.log”的日志文件。

当我转到该文件时,它包含以下信息:

文件对象析构函数中的关闭失败:
IOError:[Errno 0] 错误

除了记录到上面列出的目录的错误之外,该文件可以正常运行并且完全没有问题。

我整个早上都在阅读,试图了解正在发生的事情。我在几年前看到一篇知识库文章STDIN/STDOUT Redirection May Not Work If Started from a File Association讨论了 Windows XP 和返回码的问题。这似乎可能是同一类型的问题,但文章说该问题已通过修补程序解决。

当我在系统上运行实际的 Python 脚本时,编译的可执行文件会给我这个错误,它运行良好,完全没有错误或异常。

为什么会出现这个问题?我认为这是 py2exe 的问题,或者 Windows 7 32 位如何处理来自 py2exe 可执行文件的返回代码。

4

0 回答 0