Использование bundle_files = 1 с py2exe не работает - PullRequest
15 голосов
/ 26 мая 2010

После некоторого большого разочарования я сделал это! Я преобразовал свое приложение django в «exe», чтобы оно работало в Windows как отдельное автономное приложение (используя cherrypy в качестве сервера WSGI). Но когда я пытаюсь установить опцию py2exe "bundle_files" to "1" (то есть связать интерпретатор python Python25.dll внутри сгенерированного exe), генерируемый exe вылетает с сообщением о kernel32.dll

Но когда я использую "bundle_file" = "2", сгенерированный exe работает как чудо, но, разумеется, Python25.dll должен иметь отдельный файл рядом с ним.

Кто-нибудь испытывал подобное поведение, подскажите, пожалуйста, что мне не хватает?

Спасибо! :)

Ответы [ 4 ]

1 голос
/ 26 июля 2011

В этом посте рассказывается об использовании py2exe для получения одного exe-файла.

py2exe - создать один исполняемый файл

Если вы отправите какой-нибудь код, я посмотрю, и ваше сообщение об ошибке поможет.

1 голос
/ 29 апреля 2011

Возможно, вы можете попробовать pyinstaller .

У меня раньше была эта проблема, и я никогда не находил решения, но pyinstaller тоже отвечает моим потребностям и отлично работает.

0 голосов
/ 14 сентября 2016

Вот решение:

from distutils.core import setup
import py2exe, sys, os

sys.argv.append('py2exe')

setup(
    options = {'py2exe': {'bundle_files': 3}},
    windows = [{'script': "Your_App_Name.py"}],
    zipfile = None,
)
0 голосов
/ 25 января 2013

Я тоже сталкивался с подобной проблемой. Но мой с PyGTK. Простая программа не имеет проблем с этим. Хотя прямого решения нет, здесь есть объяснение здесь .

Там написано:

Это основано на примере кода Inno в дистрибутиве py2exe. Он успешно работал для довольно сложного приложения PyGTK / Twisted, требующего дополнительных данных во время выполнения (данные времени выполнения GTK, файлы GtkBuilder, изображения, текстовые данные), которые не будут работать с bundle_files .

...