Py2Exe: error de carga de DLL

Cuando intenté usar py2exe para convertir un juego Python simple que hice en formato exe, me dio el siguiente error:

Traceback (most recent call last): File "C:\Users\Tali\Desktop\2exe.py", line 4, in  setup(console=['test.py']) File "C:\Python\lib\distutils\core.py", line 152, in setup dist.run_commands() File "C:\Python\lib\distutils\dist.py", line 953, in run_commands self.run_command(cmd) File "C:\Python\lib\distutils\dist.py", line 972, in run_command cmd_obj.run() File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 243, in run self._run() File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 305, in _run dlls = self.find_dlls(extensions) File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 389, in find_dlls self.dll_excludes) File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 1021, in find_dep endend_dlls import py2exe_util ImportError: DLL load failed: %1 is not a valid Win32 application. 

Busqué en la web durante aproximadamente una hora, intenté cambiar cosas en mi progtwig. Nada funciona. Aunque mi progtwig utiliza la biblioteca “aleatoria”, no he visto un caso en el que haya causado este tipo de problema.

El script de instalación:

 from distutils.core import setup import py2exe setup(console=['test.py']) 

Sí, ambos scripts están en la misma carpeta (Escritorio). Si importa, estoy ejecutando Windows Vista con Python 2.7

Muchas gracias a todos por adelantado.

Tuve exactamente el mismo problema.

Como tengo Windows 7 de 64 bits, descargué py2exe-0.6.9.win64-py2.6.amd64.exe, que supongo que es la versión de 64 bits de py2exe. pero no funcionó, y tuve el mismo error.

Cambié a py2exe-0.6.9.win32-py2.6.exe, y funcionó bien.

Supongo que tiene que hacer coincidir los 32 o 64 bits con la instalación de Python en lugar de las ventanas en sí.

por cierto, “setup.py py2exe” o “python setup.py py2exe” realmente no importa, si ordenó a Windows que abra * .py con python durante la instalación de python.

Me encontré con el mismo problema y busqué y vine aquí. Intenté de forma rápida por xiao-yu pero no trabajé. Así que encontré esto en http://www.py2exe.org/index.cgi/Tutorial#Step52 : 5.2.1. Agrupando el DLL en tiempo de ejecución de C

Si tiene los derechos para redistribuir MSVCR90.dll, debería haber una copia en su instalación de Visual Studio, bajo VC \ redist \ x86 \ Microsoft.VC90.CRT. Desde Visual Studio 2008, no puede simplemente copiar este archivo DLL, también necesita el archivo de manifiesto que encontrará allí. El archivo redist.txt declara que debe distribuir las tres dlls y el archivo de manifiesto sin modificar y es una violación del acuerdo de licencia distribuir solo una de las dlls sin las otras (aunque py2exe solo necesita MSVCR90.dll). El pasaje pertinente del archivo redist.txt es el siguiente: ———————–

así que inténtalo.

Parece que el problema se puede resolver descargando el instalador py2exe correcto para su plataforma y versión.

Yo también tuve el mismo problema aquí. Estaba ejecutando Windows 7 64 bit y había instalado Python 2.7. Mi problema tenía que ver con el hecho de que instalé py2exe-0.6.9.win32-py2.7.exe y el instalador no pudo encontrar python, a pesar de que encontró la carpeta de instalación. La ejecución de python setup.py py2exe en esta etapa me dio exactamente los mismos errores que está viendo.

Luego descargué py2exe-0.6.9.win64-py2.7.amd64.exe desde esta página y lo instalé. La instalación se python setup.py py2exe a cabo sin un problema y la python setup.py py2exe me proporcionó muchos resultados de consola, creó las carpetas de comstackción y dist y el ejecutable esperado.

Intente instalar el paquete redistribuible de Microsoft Visual C ++ 2008 (x86): http://www.microsoft.com/downloads/en/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&displaylang=en

Resolví este problema descargando “Microsoft Visual C ++ Compiler for Python 2.7” http://www.microsoft.com/en-pk/download/details.aspx?id=44266

Puedes lidiar con py2exe y los dolores de cabeza. Intenté hacer esto, incluso cuando lo hice bien, se produciría un error, aunque encontré el excelente progtwig python gui2exe, esto hace que sea extremadamente fácil hacer un exe (o cualquiera de los otros). formatos soportados).

Gui2exe: http://code.google.com/p/gui2exe/downloads/detail?name=GUI2Exe_0.5.0.zip

Ejemplos: http://code.google.com/p/gui2exe/wiki/GUI2ExeExamples

De sus comentarios, veo que está haciendo esto en el símbolo del sistema:

 setup.py py2exe 

a partir del tercer paso del tutorial py2exe , debes hacer esto en su lugar (en el comando promt):

 python setup.py py2exe 

Un segundo vistazo a los comentarios sobre la pregunta original muestra que esta sugerencia ya se ha hecho. +1 a joaquin por esto.

Para intentar responder a tu pregunta otra vez: Joaquín también mencionó que esto podría ser un problema de ruta. En lugar de intentar solucionarlo, es posible que desee considerar la opción más sencilla de copiar sus archivos de python en C: \ Python. Luego en el símbolo del sistema:

 cd C:\Python python setup.py py2exe 

Esto siempre me ha funcionado.

Espero que esto ayude

Estaba enfrentando el mismo problema, estaba usando Python 2.7 (32 bits) en Windows 7 (64 bits) con py2exe-0.6.9.win64-py2.7.amd64.exe , entonces el problema era que estaba usando Python de 32 bits y py2exe de 64 bits. Si no sabe si el paquete Python que está utilizando es de 32 bits o de 64 bits, ejecute idle.bat desde C:\Python27\Lib\idlelib\.

La primera línea de la ventana de python le mostrará los detalles del paquete de python.

Desinstalé el py2exe-0.6.9.win64-py2.7.exe ejecutando "pip uninstall py2exe" e instalé py2exe-0.6.9.win64-py2.7.amd64.exe que funcionó para mí.

py2exe se ve muy anticuado. La última versión tiene cuatro años (a partir de 2014, hoy es 2018).

La última entrada en la parte de la página de inicio “noticias” es de 2008 (diez años).

Supongo que es mejor usar una herramienta diferente si tiene errores con py2exe hoy.