• Domingo 17 de Noviembre de 2024, 19:50

Autor Tema:  Reduciendo El Tamaño Del .exe  (Leído 1295 veces)

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Reduciendo El Tamaño Del .exe
« en: Martes 5 de Octubre de 2004, 18:42 »
0
Pasos a seguir:

1.- Evita infra-utilizar bibliotecas de funciones. Si sólo deseas abrir archivos .gif estáticos, busca un componente que sólo realize esa función y no uno que además comprima y los anime. Ten cuidado con bibliotecas que adosan al ejecutable imágenes y otros tipos de datos que posiblemente no vayas a utilizar.

2.- Al momento de compilar la aplicación asegurate de eliminar toda la información para debug configurando las opciones de compilación para que no genere esta información para la versión a distribuir.

3.- Eliminar el "relocation section" del ".exe". Este es necesario para los .dll pero no pare el ".exe".

Utiliza esta herramienta: (Viene con código fuente bajo licencia open source para delphi 5)

http://www.jrsoftware.org/striprlc.php

4.- Hasta este paso sólo se quitaron partes no funcionales del archivo ejecutable. El siguiente paso es comprimir la información funcional del ejecutable, utiliza esta herramienta que también viene bajo licencia open source: (No la uses indiscriminadamente en ejecutables ajenos, puede ser que el ejecutable necesite su estructura de archivo intactacta por X o Z razón. Por supuesto tu sabes si tu ejecutable lee su mismo archivo ".exe" para buscar alguna información.)

http://upx.sourceforge.net/

Finalmente tienes un archivo ejecutable comprimido.

Ventajas:
+ Un +-10% de ganancia de compresión respecto al .rar .zip para fines de distribución por internet.
+ El código está algo más protegido de hackers no profesionales al estar comprimido.
+ El ejecutable final ocupa menos espacio en disco.

Desventajas:
- Al momento de ejecutar la aplicación se descomprime todo el ejecutable en memoria, lo que consume una fracción de segundo y la misma cantidad de memoria extra del tamaño no comprimido del ejecutable. En la actualidad estas desventajas no son notadas por el usuario final, hagan la prueba, corran ambas versiones de sus ejecutables y verán que no existe diferencia palpable para el usuario final.