Ошибки ввода-вывода py2exe в 32-разрядных системах Windows 7 - PullRequest
1 голос
/ 02 марта 2011

У меня есть скрипт, который использует py2exe для 32-битной Windows Python 2.6, используя Python 2.6.2. Этот сценарий имеет встроенную обработку исключений и корректно работает в 64-разрядных системах Windows 7 и Windows XP в скомпилированном исполняемом формате py2exe без ошибок и проблем.

Однако, когда я запускаю исполняемый файл в 32-разрядной системе Windows 7, я получаю всплывающую ошибку, которая гласит:

Подробнее см. Файл журнала в C: \ path \ to \ directory \ program_name.exe.log.

Когда я иду к этому файлу, он содержит следующую информацию:

Не удалось закрыть в деструкторе файлового объекта:
Ошибка ввода-вывода: [ошибка 0] Ошибка

Файл работает правильно и не имеет никаких проблем, за исключением ошибки, которая регистрируется в каталоге, указанном выше.

Я читал все утро, пытаясь понять, что происходит. Я видел статью базы знаний, Перенаправление STDIN / STDOUT может не работать, если он был запущен из файловой ассоциации , из которой пару лет назад говорили о проблемах с Windows XP и кодами возврата. Кажется, что это может быть проблема того же типа, но в статье говорится, что проблема была решена с помощью исправления.

Когда я запускаю настоящий скрипт Python в системе, которая выдает мне эту ошибку с откомпилированным исполняемым файлом, он работает нормально, без ошибок или исключений вообще.

Почему возникает эта проблема? Я думаю, что это проблема с py2exe, или как 32-разрядная версия Windows 7 обрабатывает коды возврата из исполняемого файла py2exe.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...