Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-12-2012
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
No uso Delphi XE3, pero seguro que hay alguna opción en la configuración del compilador que puedes activar. Por ejemplo (al menos con Lazarus, que es lo que más uso ahora) hay una opción "strip" que elimina toda la información que no tenga que ver con la ejecución.

Otra posibilidad es que estés usando RTTI (identificación del objetos en tiempo de ejecución, entendiendo "objeto" en el sentido clásico), algo que suele hinchar mucho el ejecutable ya que almacena el nombre de clases, tipos, registros... incluso si no se usa depuración. Si no es necesario, deberías revisarlo y no usarlo (por ejemplo, no usar "... AS <tipo>" y usar "<tipo> (...)" en su lugar, salvo que haya una buena razón).

Por último, posiblemente estés mezclando FireMonkey con el viejo VCL. Nunca he usado FireMonkey, pero si no lo entiendo mal es un sustituto de VCL, por lo que no deberían usarse los dos a la vez.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #2  
Antiguo 06-12-2012
cocute cocute is offline
Miembro
 
Registrado: nov 2008
Posts: 403
Poder: 16
cocute Va por buen camino
No, al crear un proyecto Firemonkey las VCL no se cargan, se carga esto:

Poniendo sólo esto en el uses
FMX.Forms;
no varía nada el tamaño que poniendo más librerias FMX que no se usan.

Poniendo esto, he conseguido reducir 1mb o así pero entiendo que 7,6mb siguen siendo muchos megas para un proyecto vacío.

{$IF CompilerVersion >= 21.0}
{$WEAKLINKRTTI ON}
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
{$IFEND}
Responder Con Cita
  #3  
Antiguo 06-12-2012
cocute cocute is offline
Miembro
 
Registrado: nov 2008
Posts: 403
Poder: 16
cocute Va por buen camino
tiene que ser algo que tengo mal configurado en los proyectos creados por defecto.

Ya que he bajado un ejemplo hecho con firemonkey y al compilarlo se me queda en unos 1,7mb.

tendré que investigar en el fichero .dproj aunque hay tantas cosas ahí que no se cual puede ser
Responder Con Cita
  #4  
Antiguo 24-12-2012
cocute cocute is offline
Miembro
 
Registrado: nov 2008
Posts: 403
Poder: 16
cocute Va por buen camino
acabo de descubrir un packer que funciona mejor que el UPX,
vamos un ejecutable de 10mb que el UPX me lo dejaba en 2682kb
el mpress este me lo deja en 1937kb

Lo bueno que tiene además este packer es que sirve también para programas compilados en 64bits
y para programas compilados para OSX (bueno comprimirlos los comprime, probarlos no los he probado.)

es el:
http://www.matcode.com/mpress.htm

Creeis que son recomendables estos packers? ya que me imagino que al tener que descomprimirse en tiempo de ejecución
demoran un pelín el arranque del programa, aunque normalmente sea insignificante.
Responder Con Cita
  #5  
Antiguo 24-12-2012
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Una pequeña "desventaja" de ese mpress es que "sólo" es compatible con Windows y MacOS. Una pena, porque siempre vienen bien estas competencias.

Respecto a si es recomendable o no, pues depende de cada caso. Si no hay necesidades especiales de memoria ni velocidad, pues ¿por qué no?
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #6  
Antiguo 16-01-2013
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.492
Poder: 21
MAXIUM Va camino a la fama
Cita:
Empezado por cocute Ver Mensaje
acabo de descubrir un packer que funciona mejor que el UPX,
vamos un ejecutable de 10mb que el UPX me lo dejaba en 2682kb
el mpress este me lo deja en 1937kb

Lo bueno que tiene además este packer es que sirve también para programas compilados en 64bits
y para programas compilados para OSX (bueno comprimirlos los comprime, probarlos no los he probado.)

es el:
http://www.matcode.com/mpress.htm

Creeis que son recomendables estos packers? ya que me imagino que al tener que descomprimirse en tiempo de ejecución
demoran un pelín el arranque del programa, aunque normalmente sea insignificante.
Mmmm... no, no es recomendable en el sentido que esos 10mb, aunque este comprimidos a 2,62mb, seguirán siendo 10mb, ya que al ejecutarlos, se descomprimen en memoria hasta los 10mb que ocuparían originalmente.

Estos tipos de compresión solo sirven para transportar un ejecutable de menor tamaño y de algún modo básico "proteger" el ejecutable
Responder Con Cita
  #7  
Antiguo 16-01-2013
cocute cocute is offline
Miembro
 
Registrado: nov 2008
Posts: 403
Poder: 16
cocute Va por buen camino
Cita:
Empezado por MAXIUM Ver Mensaje
Mmmm... no, no es recomendable en el sentido que esos 10mb, aunque este comprimidos a 2,62mb, seguirán siendo 10mb, ya que al ejecutarlos, se descomprimen en memoria hasta los 10mb que ocuparían originalmente.

Estos tipos de compresión solo sirven para transportar un ejecutable de menor tamaño y de algún modo básico "proteger" el ejecutable
Pero que sentido tiene que haya dentro de un ejecutable por ejemplo 1mb seguido que es todo ceros?
Por qué no se optimiza más el tamaño los ejecutables al compilarse?
Cierto es que cada día es menos importante el tamaño, pero tampoco es como para derrocharlo sin razón.
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
Tutoriales de FireMonkey cmfab FireMonkey 2 27-08-2012 14:28:30
Firemonkey/Ios vs FreePascal bbasas FireMonkey 3 28-06-2012 12:10:47
¿FireMonkey reemplazará a la VCL? manuc FireMonkey 13 22-03-2012 03:00:49
Firemonkey ElDioni La Taberna 19 28-10-2011 11:25:40
Campos creados dinámicamente vs creados estáticamente Jose_Pérez Conexión con bases de datos 2 14-04-2004 11:34:03


La franja horaria es GMT +2. Ahora son las 14:22:01.


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