Kompresovanje ili sta?

Kompresovanje ili sta?

offline
  • Pridružio: 29 Okt 2004
  • Poruke: 20

Pozdrav svima!

Skinuo sam sa interneta nekakve primjere, i primjetio da svi EXE fajlovi mali (male velicine, neki su 30 - 40 Kb a nisu konzole), pa sad neznam jesu li ti programi kompresovani ili ...?



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Ajde malo pojasni sta si hteo sa time da kazes? Sta si skidao? Primeri za delphi u EXE formatu? Sta ti to vredi kada je to kompajlirano i ne mozes da vidis source?



offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Postoje nekoliko nacina da se smanji velicina Delphi aplikacije:
- forme i objekte na formi kreirati dinamicki, bez koriscenja VCL komponenti, koriscenjem samo Win API-ja (EXE sa praznom formom = 9kb)
- koriscenje KOL/MCK umesto VCL (EXE sa praznom formom = 14kb)
- nesto moze da se dobije izbacivanjem nepotrebnih delova PE-a (postoji program Reducer v1.2) - time se na programu od 500kb dobija oko 35-40kb izbacenih PE headera.
- pakovanje EXE-a pakerima kao sto su UPX (besplatan), ASPack (komercijalan)... U zavisnosti od sadrzaja fajla, sa 500kb se moze doci do nekih 180kb. Napomena: UPX 1.24 uspesno kompresuje Delphi fajlove, verzije posle 1.24 zasigurno ne saradjuju sa D7 (neznam za D6 i ostale pre toga). UPX-ovan program je mali samo na disku, u memoriji se raspakuje na svoju originalnu velicinu + velicina UPX-a.

offline
  • Pridružio: 29 Okt 2004
  • Poruke: 20

Mislio sam na ekstenziju EXE!

Netreba mi njegov kod, nego zelim da napravim svoju aplikaciju te velicine.

Skinuo sam taj 'neki kod' sa sa svim fajlovima, ali kad ga kompajliaram velicina se promjeni sa 50 na 360 i vise kb.

Kompresujem taj dobiveni EXE fajl pomocu UPX-a, ali se velicina smanji na 180 kb.

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Zavisi i od verzije Delphi-ja koji se koristi. Razlika u kompajliranom fajlu izmedju D5 i D7 ume da bude jako velika. Isti source kompajliran sa D5 je 350kb a sa D7 480kb.
Ima jos jedna stvar, program mozes linkovati dinamicki, tako da ce EXE sadrzati samo tvoj kod, a VCL ce biti u DLL-u. Ovo se steluje u Projekt>Options>Packages>Build with runtime packages. U ovom slucaju ces uz svoju aplikaciju morati da isporucujes i DLL-ove koje ona koristi (podrazumeva se da korisnik nema instaliran Delphi, pa samim tim ni ove DLL-ove).
Na istoj kartici mozes da iskljucis iz projekta i pakete/componente koje ne koristis. Nisam siguran da li ovo utice na velicinu fajla.

offline
  • Pridružio: 29 Okt 2004
  • Poruke: 20

Zahvaljujem na odgovorima.

Interesuje me jos, kako da provalim koje Dll-ove ce koristiti ta moja aplikacija?

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

uz Visual Studio6 dolazi jedan alat zove se Depends... tu ti pise koje DLLove koristi EXE fajl...

Ko je trenutno na forumu
 

Ukupno su 376 korisnika na forumu :: 4 registrovanih, 2 sakrivenih i 370 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3028 - dana 22 Nov 2019 07:47

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: dejoglina, miodrag2, ShurikSST, t.mile