У меня есть код python (2.7), который имеет gui (Tkinter) и другой модуль. Я пытался сделать его файлом .exe, но имел странные результаты. Ниже приведены два случая:py2exe exe закрывается сразу после запуска
Нет модуль с именем py2exe: Я использую Canopy 64bit для создания питона сценариев. Поскольку это 64 бит, я загрузил 64-разрядную версию py2exe для python 2.7 и установлен. Во время установки программа py2exe автоматически видит мой путь навеса, и я проверяю, есть ли у меня модуль py2exe после установки. Я проверил и увидел, что папка py2exe и модуль находятся в Canopy/Libs. Таким образом, он выглядел так, как будто он был установлен правильно, но когда я перехожу в cmd, меняю каталог, а затем
python myscript.py py2exe
, он говоритno module named py2exe
. Если я начинаю 64 бит IDLE иimport py2exe
, он импортирует.Поэтому я попытался установить 32-разрядную версию py2exe. Во время установки он видит C:/Python27, поэтому я устанавливаю его там, 64-разрядный IDLE не может импортировать, если я вызываю py2exe, но 32 бит может. С 32-разрядной версией py2exe, когда я делаю
python myscript.py py2exe
, он компилирует мой скрипт в файл .exe. Однако при двойном щелчке по файлу .exe открывается окно cmd и закрывается сразу после запуска.
Я проверил другие подобные темы здесь, но ни один из них не помог мне в этом, так как странно, что 64-разрядная установка не дает модуля с именем py2exe. Любая помощь будет оценена, спасибо заранее.
Примечание: У меня есть C:/Python27 в пути системных переменных и пути Canopy в моем пути переменных пользователя.
Обновление Случай 1: При запуске командной строки сени и компакт-диск оттуда, а затем следуют типичные шаги, py2exe начинает работать, но застревает на: MSVCP90.dll: No such file or directory
и он выходит
Обновление: Оказывается, это касается моего импорта. Проблема возникает только при импорте matplotlib. С импортированным Tkinter, xlrd и numpy он работает без проблем, но когда я импортирую matplotlib, он дает мне эту ошибку в msvcp90.dll. Если я удалю все импорт matplotlib из моего gui, он компилируется, но когда я пытаюсь запустить .exe, он запускает cmd-окно, которое сразу же закрывается сразу после.
Возможно, это связано с [Нет модуля с именем py2exe] (https://stackoverflow.com/questions/9559601/no-module-named-py2exe?rq=1). Посмотрите это и сообщите нам, какая у вас версия пакета py2exe? – smci
Я делаю то же самое после обеда. – percusse
Прежде всего, попробуйте запустить файл .exe через консоль cmd, а не дважды щелкнуть по нему. Таким образом, окно cmd не исчезнет, и вы сможете увидеть, какую ошибку он выбрасывает, а затем опубликовать это. Тогда мы сможем помочь вам. –