![]() |
¿Por qué los programas en Delphi pesan tanto?
Hice un programa de 'hola mundo' en Delphi consola y pesa 1.163 KB, en Visual BASIC el hola mundo no pesa tanto. Eso me pasa en la versión de prueba de Delphi Berlin y en Lazarus. No sé si las aplicaciones visuales pesen así con Delphi. Saludos
|
1.163 KB no es "pesar mucho".
La diferencia entre lenguajes esta en cuanto del codigo referencia dinamicamente y cuanto estaticamente. VB no "pesa" tanto porque depende de un runtime/librerias (.net) que es donde esta el "peso". Delphi por el contrario, incorpora el "runtime/librerias" estaticamente y por eso parece mas pesado. |
Cita:
|
Buenas,
otro factor importante es envia ese ejecutable a alguien y funcionara, el de VB sino tiene todas las librerias que requiere no se podra ejecutar. |
Cita:
|
DX10.1 Berlin automáticamente adjunta skin Win10 o el Sistema operativo que estas utilizando por ello pesa así su ejecutable.
prueba en diferentes SO veras q se adapta a cada uno. en visualbasic si no lo colocas un skin la aplicación parece windows 98 yo tengo una aplicación DX10.1 que lo compila en 37Mb y utilizo compresor upx y lo comprime a 3.5Mb una belleza, y lo mejor el ejecutable no depende de OCX o DLL como VisualBasic. |
|
Por supuesto y a ojos cerrados, Delphi, Delphi, Delphi, Delphi, Delphi, Delphi, Delphi, Delphi, Delphi, Delphi, :D:D:D
|
Cita:
Gracias |
Cita:
|
Hola,
Cita:
P.D. Si lo que se busca son archivos ejecutables realmente pequeños en Delphi, había por ahí un proyecto de nombre "KOL Magic Library" que existía al menos hasta para Delphi 7. Usando dichas librerías en lugar de la VCL de Delphi, los ejecutables obtenidos eran sorprendentemente pequeños. |
avmm2004 Yo utilizo UPX hasta la fecha es bueno me comprime y no es lento la aplicación,
dec como comprimes en el ejecutable de 19Mb para q termina en algo menos? como lo haces con Inno Setup ? how to ... |
Hola,
Cita:
|
Cita:
¿O cuánto consideras que debería "pesar" el 'Hola, mundo!' más poderoso que hayas programado hasta el momento? |
De todos modos, podes generar un ejecutable que no incluya todas las dependencias, y distribuir las dependencias y el binario final por separado; entonces quedaria un ejecutable notablemente mas chico pero que necesitará de los bpl / dll necesarios para poder funcionar. Busca por los foros carga dinamica de paquetes
|
Y ya que estamos,
tambien suele ocurrir al hacer unos proyectos sobresimensionados como un HOla Mundo, cae uno en la tentacion de probar varios VLC, que al final no usamos y los borramos del diseño, pero no borramos la libreria de la unit y nos quedan uno residuos estupendos, como cuando usamos Jedi, Devexpres, que directamente te meten unas 10 units a escondidas :) y facilemten te pesa el hola mundo mas de 20 mb |
Definitivamente. Igual, yo ya me acostumbré a eliminar todas las unit que no hacen falta, incluso si es una de las de Delphi estándar
|
Gracias por sus respuestas, el apoyo que se obtiene en las comunidades de desarrolladores en un lenguaje de programación también es un plus. Saludos
|
Cita:
Cita:
Ese es el comportamiento por defecto desde D6 y D7 y debiera seguir siéndolo en las nuevas versiones. Saludos, |
La verdad no lo he probado. Realmente si elimino unidades del uses no es para ahorar kilobytes :D
Aun asi, hay que tener cuidado con las unit que tienen "initialziation" y "finalization". Yo en alguna unit se que uso un "viejo truco":
Eso lo hago para registrar alguna cosa en algun lado, por ejemplo, como cuando se registran las clases de graficos (distintos formatos de imagenes) o lo mismo para archivos multimedia |
La franja horaria es GMT +2. Ahora son las 08:01:08. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi