Python и Py2Exe: «% 1 не является допустимым приложением Win32» - PullRequest
2 голосов
/ 09 ноября 2010

Я пытаюсь скомпилировать проект Python в исполняемый файл. Чтобы проверить это, у меня установлен Py2Exe, и я пытаюсь выполнить их тест Hello.py. Вот hello.py:

print "Hello World!"

Вот мой setup.py:

from distutils.core import setup
import py2exe

setup(console=['hello.py'])

В командной строке я делаю следующее:

python setup.py py2exe

И я получаю его в основном работающим, пока он не начнет «находить необходимые dll», и в этот момент мы получим:

Traceback:
<some trace>
ImportError: DLL load failed: %1 is not a valid Win32 application.

Версия Python - 2.6.6, и я нахожусь на 32-разрядной машине с Windows 7. Любые идеи или помощь наиболее ценны.

Ответы [ 3 ]

1 голос
/ 07 марта 2012

По моему опыту py2exe довольно сложно использовать, немного хитро с точки зрения того, сработает ли это или нет, и это абсолютный кошмар для работы с любым импортом matplotlib.

Я понимаю, что этот вопрос довольно старый сейчас, но я не уверен, почему люди продолжают использовать py2exe, когда есть намного более гладкие доступные альтернативы.У меня хорошие результаты с pyinstaller (что мне было рекомендовано после того, как я задал вопрос здесь, на SO, где я также боролся с py2exe).Теперь каждый раз, когда я пробовал это, это «просто работало», поэтому, если вы все еще заинтересованы в упаковке кода Python в исполняемые файлы, попробуйте вместо этого попробовать это приложение.

http://www.pyinstaller.org/

Примечание: py2exe не обновлялся в течение нескольких лет, в то время как модули Python и сторонних производителей, которыедолжно быть отчасти почему это часто не работает особенно хорошо в эти дни.

0 голосов
/ 04 июня 2014

У меня была такая же проблема, вот что я смог сделать Q-A . По сути, я скачал обновленный файл sqlite dll с sqlite.org. Я заменил созданный py2exe DLL-файл этим новым файлом. Программа сработала после этого. Обязательно загрузите 32-битную DLL, однако.

0 голосов
/ 09 ноября 2010

Похоже, шаг 5 в этом уроке описывает, что вы испытываете:

http://www.py2exe.org/index.cgi/Tutorial#Step5

...