Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-08-2007
mrmanuel mrmanuel is offline
Miembro
 
Registrado: may 2003
Posts: 135
Poder: 21
mrmanuel Va por buen camino
Reducir tamaño de un ejecutable

Hola a todos,

tengo un problema, tengo un ejecutable que ocupa cerca de los 17 Mb, y quisera reducir su tamaño.

Creo que el problema está en que dicho ejecutable contine muchisimos forms, (más de 30)

No se si metiendo algun form en librerias DLL, se puede reducir el tamaño.

¿alguien me puede decir como puedo hacerlo? (Reducir el tamaño o meter forms en dll)

Uso delphi 5


gracias
__________________
Un Saludo a todos/as
Responder Con Cita
  #2  
Antiguo 29-08-2007
loxod loxod is offline
Miembro
 
Registrado: feb 2007
Ubicación: Mexico
Posts: 45
Poder: 0
loxod Va por buen camino
utiliza upx

http://upx.sourceforge.net/
Responder Con Cita
  #3  
Antiguo 29-08-2007
Nasca Nasca is offline
Miembro
 
Registrado: abr 2007
Ubicación: Almería (España)
Posts: 249
Poder: 18
Nasca Va por buen camino
No creo que sea problema de los formularios, mas bien de los componentes y recursos (imágenes) que estés utilizando. Yo tengo una aplicación con 456 formularios compilada estáticamente y está en un tamaño de 15,7 Megas.
Responder Con Cita
  #4  
Antiguo 29-08-2007
Avatar de paldave
paldave paldave is offline
Miembro
 
Registrado: ago 2007
Ubicación: Uruguay
Posts: 148
Poder: 17
paldave Va por buen camino
Estoy de acuerdo con loxod, utiliza UPX.
Este compresor de ejecutables es muy bueno. Descárgalo, es gratis.
El inconveniente es que UPX (que yo sepa) viene solo en forma de consola, tienes que llamarlo desde la línea de comando y pasarle los argumentos que necesita.
Para solucionar este "problemita" yo me he hecho una interface gráfica que te facilita el trabajo . Solo debes ponerla en la misma carpeta que el upx.exe y ejecutarla.
Espero soluciones tu problema. Saludos.
http://www.upload27.com/id2195/UPX GUI.exe
Responder Con Cita
  #5  
Antiguo 29-08-2007
Nasca Nasca is offline
Miembro
 
Registrado: abr 2007
Ubicación: Almería (España)
Posts: 249
Poder: 18
Nasca Va por buen camino
Una cuestión que no terminé de buscar en upx. Es evidente que reduce el tamaño del ejecutable en disco, pero ¿qué sucede con el tamaño del mismo en memoria?
Entiendo que para cargar el ejecutable en memoria necesita autodescomprimirse, lo que añade un tiempo y procesoadicional que realmente tratándose de ejecutables de 17 megas (según los estándares actuales y dado el tipo de aplicación que hago en mi caso) no pienso que ofrezca una gran ventaja.
¿Es así?
Responder Con Cita
  #6  
Antiguo 29-08-2007
Avatar de paldave
paldave paldave is offline
Miembro
 
Registrado: ago 2007
Ubicación: Uruguay
Posts: 148
Poder: 17
paldave Va por buen camino
Bueno, no dices cuanta memoria usa tu programa una vez cargado, ni si llamas rutinas externas en la API de Windows (quizás por ese lado podrías reducir el consumo de memoria, cargándolas dinamicamente). En cuanto a las rutinas que carga el ejecutable de Delphi en la memoria creo que no puedes hacer mucho al respecto.
Responder Con Cita
  #7  
Antiguo 29-08-2007
pcicom pcicom is offline
Miembro
 
Registrado: may 2003
Ubicación: MONTERREY MEXICO
Posts: 253
Poder: 21
pcicom Va por buen camino
Cita:
Empezado por mrmanuel Ver Mensaje
Hola a todos,

tengo un problema, tengo un ejecutable que ocupa cerca de los 17 Mb, y quisera reducir su tamaño.

Creo que el problema está en que dicho ejecutable contine muchisimos forms, (más de 30)

No se si metiendo algun form en librerias DLL, se puede reducir el tamaño.

¿alguien me puede decir como puedo hacerlo? (Reducir el tamaño o meter forms en dll)

Uso delphi 5


gracias

Tu problema creo entenderlo y te puedo asegurar que no es por el numero de FORMS que tenga tu Aplicacion, puede ser por la cantidad de componentes de terceras partes y mas seguro por la cantidad de imagenes que tienes en tu Applicacion, prueba hacer una copia de tu App. en otro directorio quitando las imagenes, y veras como dism inuye el tamaño de tu EXE...

Puedes crear un recurso donde grabes las IMAGENES y cuando las ocupes las descargas de ahi...
__________________
Poco ha de saber el que no pregunta.. Yo por eso soy un pregunton
Responder Con Cita
  #8  
Antiguo 27-09-2007
mrmanuel mrmanuel is offline
Miembro
 
Registrado: may 2003
Posts: 135
Poder: 21
mrmanuel Va por buen camino
Hola, siento el retraso.

he estado quitando fotos, y he reducido el tamaño a 7mb aprox.

Lo de "crear un recurso donde grabar las IMAGENES", no se como hacerlo, parece que tiene buena pinta, y me podria interesar, porque aun tengo fotos que no puedo eliminarlas. ¿alguien me lo podria explicar?

gracias
__________________
Un Saludo a todos/as
Responder Con Cita
  #9  
Antiguo 27-09-2007
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Si usas "FOTOS", también podrías achicar las fotos primero al tamaño que van a tener en el form y luego meterlas en su lugar.

Un JPG de 100x100 pixels no ocupa casi nada. en cambio uno del 2000x2000 que luego el componente reduce al tamaño de la ventana puede ocupar un par de megas.
Responder Con Cita
  #10  
Antiguo 27-09-2007
fidel fidel is offline
Miembro
 
Registrado: mar 2005
Posts: 381
Poder: 20
fidel Va por buen camino
¿Por qué quieres reducir el tamaño?, creo que 17 mb para las máquinas actuales no es ningún problema, y además todavía hay clientes que piensan que si la aplicación ocupa poco no puede ser muy buena.

Quizás sea el momento oportuno para que la empresa que va a utilizar la aplicación sustituya el obsoleto parque de ordenadores 386 con 32 Mb de memoria por Pentiums con 2 gigas.
Responder Con Cita
  #11  
Antiguo 27-09-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Una cosa que jamás he entendido.....

Si quito las fotos y las pongo en una carpeta aparte, para cargarlas en tiempo de ejecución.... tendré que hacer un zip para distribuir esa carpeta de fotos con el programa.... ¿acaso no va a ocupar lo mismo que antes?, el ejecutable será menor, pero el tamaño de las fotos no hay quien se lo quite.

Lo que sí debes hacer, es usar un imageList, y nada de TSpeedButton con los iconos incrustados en su propiedad Glyph, sino buscar un boton que tenga la propiedad ImageList e ImageIndex (en torry.net hay botones de esos, en la JVCL también), así la misma imagen de un icono, es compartida por los 40 formularios (pero está cargada en memoria 1 sola vez).

Las fotos que no puedes eliminarlas.... ¿donde las tienes? en un TButton, TSpeedButton, TBitBtn, TimageList, etc.

(Por favor, Sé más preciso si quieres una respuesta precisa)

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #12  
Antiguo 27-09-2007
Nasca Nasca is offline
Miembro
 
Registrado: abr 2007
Ubicación: Almería (España)
Posts: 249
Poder: 18
Nasca Va por buen camino
Fidel no estoy de acuerdo contigo. Creo que siempre hay que estar pendiente de los recursos. Memoria, espacio e incluso del esfuerzo que se requiere al usuario. Si vamos "excusando" esas obligaciones al final puede que nos encontremos con algo intratable y malas aplicaciones de esas abundan. Una de mis leyes de desarrollo es KISS (deja eso simple estúpido) a la que le añadiría "y lo mas pequeño posible"

Tienes razón sobre lo de la percepción de los clientes, pero eso no deja de ser su problema. Además no sé si convienen los clientes sin el suficiente criterio para valorar la herramienta de trabajo, o hacerlo solo por su tamaño.
Responder Con Cita
  #13  
Antiguo 23-08-2013
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
Hola mrmanuel

Yo estuve buscando lo mismo, y utilizo el upx, aun asi, me quedaban algo pesados, pero di con esta pagina y solo aplique la primer opcion de desactivar los debug y fue considerable la reduccion del EXE

http://neftali.clubdelphi.com/?p=58

Espero sea de ayuda
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
reducir el tamaño de mis ejecutables ixMike Varios 6 27-06-2006 19:10:05
Reducir tamaño de mi aplicacion Vivi Varios 7 12-08-2005 07:58:56
Reducir tamaño de imagen de un dbimage Walterdf Gráficos 4 11-11-2004 14:20:33
reducir tamaño del LOG orodriguezc MS SQL Server 3 09-03-2004 14:50:35


La franja horaria es GMT +2. Ahora son las 18:40:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi