Windows 7 32 位系统上的 py2exe IOErrors
我有一个脚本,它使用适用于 Windows 32 位 Python 2.6 的 py2exe,使用 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 重定向可能无法工作如果从文件关联,几年前讨论 Windows XP 和返回代码的问题。这看起来可能是同一类型的问题,但文章称该问题已通过修补程序解决。
当我在编译后的可执行文件出现此错误的系统上运行实际的 Python 脚本时,它运行良好,根本没有错误或异常。
为什么会出现这个问题呢?我认为这是 py2exe 的问题,或者 Windows 7 32 位如何处理 py2exe 可执行文件的返回代码的问题。
I have a script that uses py2exe for Windows 32-bit Python 2.6, using Python 2.6.2. This script has exception handling built in and works correctly on Windows 7 64-bit systems and Windows XP systems in its compiled py2exe executable format with no errors and no issues.
However, when I run the executable on a Windows 7 32-bit system I get a pop up error that reads:
See the logfile at 'C:\path\to\directory\program_name.exe.log' for details.
When I go to that file, it contains the following information:
close failed in file object destructor:
IOError: [Errno 0] Error
The file runs correctly and has no issues at all, with the exception of the error that is logged to the directory listed above.
I have been reading around all morning trying to get a handle on what is going on. I saw a knowledge base article, STDIN/STDOUT Redirection May Not Work If Started from a File Association, from a couple of years ago talking about issues with Windows XP and return codes. This seems like it could be the same type of issue, but the article said that the issue was resolved with a hotfix.
When I run the actual Python script on the system that is giving me this error with the compiled executable, it runs fine with no errors or exceptions at all.
Why is this issue coming up? I think it is an issue with py2exe, or how Windows 7 32-bit handles return codes from the py2exe executable.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论