comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

PyInstaller, cuando no funciona el py2exe en PyQt

  • 3 Respuestas
  • 1950 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado fortil

  • *
  • Underc0der
  • Mensajes: 175
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« en: Enero 11, 2013, 12:18:04 am »
Hola a todxs


pues no sé si ya conocen PyInstaller para distribuir aplicaciones en windo$ pero como no encontré nada, acá les traigo algo de lo que he encontrado. Resulta que trataba de convertir un ejecutable con mi antiguo py2exe, pero me dió error debido a las librerías de PyQt4 que usé para la parte gráfica, entonces buscando por ahí encontré esta aplicación de distribución.

No tienes permisos para ver links. Registrate o Entra con tu cuenta

  • Descargar los archivos, los descomprimen en una carpeta.
  • En el directorio utils, de la carpeta de pyinstaller, pueden poner su programa .py (yo prefiero en ese mismo directorio)
  • Abren una ventana de comando en esa carpeta y ejecutan lo siguiente:
Código: Text
  1. usuario> python Makespec.py  --icon=ruta_del_icono.ico --version=ruta_del_archivo_version.txt --onefile -w --name=Nombre_del_programa nombre_del_programa.py
El comando -w es para evitar la consola, el --onefile es para que genere solo archivo (solo el ejecutable)

El archivo de la version.txt puede ir mas o menos así:
Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
VSVersionInfo(
  ffi=FixedFileInfo(
    filevers=(0, 0,1, 4),
    prodvers=(0, 0,1, 0),
    mask=0x3f,
    flags=0x0,
    OS=0x40004,
    fileType=0x1,
    subtype=0x0,
    date=(0, 0)
    ),
  kids=[
    StringFileInfo(
      [
      StringTable(
        '040904B0',
        [StringStruct('FileDescription', 'Programa hecho por Fortil'),
        StringStruct('FileVersion', '0.0.1.4'),
        StringStruct('OriginalFilename', 'Hecho por Fortil.exe'),
        StringStruct('ProductName', 'Hecho por Fortil'),
        StringStruct('ProductVersion', '0.0.1.0')])
      ]),
    VarFileInfo([VarStruct('Translation', [1033, 1200])])
  ]
)

edito:
Se me olvidaba que para windo$ necesitan PyWin32, es un poco liado bajarlo así que les dejo el link directamente de donde lo bajé (No tienes permisos para ver links. Registrate o Entra con tu cuenta) y el manual para ver mas a fondo (se puede comprimir con UPX, etc..) No tienes permisos para ver links. Registrate o Entra con tu cuenta
« Última modificación: Enero 11, 2013, 12:53:16 am por fortil »

Desconectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5401
  • Actividad:
    38.33%
  • Reputación 31
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #1 en: Enero 11, 2013, 12:20:43 am »
Excelente aporte Fortil!
+Karma!

Saludos!


Desconectado fortil

  • *
  • Underc0der
  • Mensajes: 175
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« Respuesta #2 en: Enero 11, 2013, 12:53:53 am »
Gracias ANTRAX, mi primer Karma  :'(


PD: cabe decir que no es necesario todo el código que dejé anteriormente, simplemente se puede poner:
Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
usuario> python Makespec.py -w --onefile programa.py

Luego se puede cambiar el icono con Resource Hacker (pero si se puede poner de una vez)

y algo interesante es que cuando compilas con py2exe y abres el programa con el Resource Hacker, puedes ver el código del programa, al compilarlo con PyInstaller solamente aparecen los recursos de los iconos, algo muy bueno para ocultar el código.
« Última modificación: Enero 11, 2013, 12:58:22 am por fortil »

Desconectado Metadato

  • *
  • Underc0der
  • Mensajes: 59
  • Actividad:
    0%
  • Reputación 0
  • C / C++ & ASM
    • Ver Perfil
« Respuesta #3 en: Junio 28, 2013, 09:28:52 am »
Excelente herramienta!! Y en mi opinión es algo mejor que py2exe.

Aun que ahora en la nueva versión el archivo se pone en la carpeta raíz de la herramienta y se ejecuta el pyinstaller.py las funciones son las mismas si no me equivoco,


Saludos!!
« Última modificación: Junio 28, 2013, 09:30:54 am por Metadato »

 

¿Te gustó el post? COMPARTILO!



[Python 3.x] Como compilar .py a .exe! (usando Pyinstaller)

Iniciado por n1sendev

Respuestas: 9
Vistas: 4293
Último mensaje Octubre 22, 2018, 04:13:40 pm
por Errodringer
PyQT: Desarrollando aplicaciones de escritorio [PDF]

Iniciado por LucaSthefano

Respuestas: 0
Vistas: 1981
Último mensaje Junio 04, 2011, 01:31:23 am
por LucaSthefano
Quitar los bordes de la ventana en PyQt

Iniciado por fortil

Respuestas: 1
Vistas: 2075
Último mensaje Enero 04, 2013, 07:51:26 am
por Pr0ph3t