Exe boyut sorunu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
haydarxxx
Üye
Mesajlar: 668
Kayıt: 09 May 2005 11:31
Konum: izmir

Exe boyut sorunu

Mesaj gönderen haydarxxx »

Delphi7 kullanıyorum veri tabım firebird

Yaptığım projelerdeki exe boyutum çok yüksek oluyor örneğin 24 form kullanarak yaptığım projenin exe boyutu 4.5mb civarında

9 formluk projemde 1.5mb civarında oluyor exe boyutu form sayısyla ilşkili ama bu kadar büyük olması doğrumudur.Kullandığım bazı skinler var ama skinsiz dahi kullandığımda (standart bileşen) exe de çok büyük bir değişim olmuyor exe boyutunu küçülte bilmem için ne yapmalıyım.Önerileriniz nedir.Saygılarımla
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Ne kadar optimize ederseniz edin belli bir oranın altına düşemezsiniz. Sadece kullanılan BPL paketlerini exe dışına alırsanız çok küçülecektir ancak bu sefer de bu paketleri de ayrıca yazılım ile aynı yerde sunmanız gerektiğinden totalde bir kazancınız olmaz.

- WinZIP, WinRAR vb. programlar bir dosyayı sıkıştırırlar ancak bu paketleri açmak için yine bu yazılımlardan birine ihtiyaç duyulur. Hatta kendi kendini açan SelfExtractor ile de donatarak paketinizin kendi kendini açmasını sağlar.

- Bu girizgah şunun içindi. Bazı yazılımlar ise tamamen EXE dosyalarına yönelik olarak sıkıştırmak için hazırlanmıştır. Benzeri bir yöntemle sıkıştırma yaparlar fakat ZIP RAR gibi paketleyicilerden farklı olarak kendisini hafızaya açarak yazılımınızın çalışmasını sağlarlar. Hız konusunda çekinceniz olmasın öyle farkedilecek türden bir yavaşlama olmaz.

- UPX, Aspack vb. yazılımlar buna en güzel örneklerdir. Google taraması ile bunlara ulaşabilirsiniz.

- Kendi ürün exe'nizi bu yazılımlarla sıkıştırarak 1 mb'ın da altına çekebilirsiniz.
Resim
Resim ....Resim
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
eğer projenizde resim kullanıyorsanız (mesela hakkında sayfasında)onlarda exenin boyutunun artmasına neden olur. Resim dosyalarını dışardan yükleyerek bu sorunu aşabilirsiniz.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

Bazı bileşen paketleri de exe boyunu cok artırmakta,
mesela bir kaç bileşen paketi kullanarak 2-3 mb civarı program yazabilirsiniz.
ama bir bileşen devexpress ten bir bileşen başkasından karma , çorba gibi bir programın boyutu 5 i de geçer 10 u da.
ÜŞENME,ERTELEME,VAZGEÇME
serkan
Üye
Mesajlar: 666
Kayıt: 10 Tem 2003 12:08
Konum: bursa

Mesaj gönderen serkan »

bende şunu sorayım neden exe boyutunun büyük olmasından rahatsız oluyorsunuz.?Küçük exe hızlı çalışır gibi bir düşünceniz varsa unutun onu.LOGO nun exe'si 45 MB civarında Mikro da o civarlarda,ETA ise her modülü ayrı exede yazarak farklı bir yöntem uygulamış.
Akin_Delphi
Üye
Mesajlar: 163
Kayıt: 06 Nis 2006 12:22

Re: Exe boyut sorunu

Mesaj gönderen Akin_Delphi »

haydarxxx yazdı:Delphi7 kullanıyorum veri tabım firebird

Yaptığım projelerdeki exe boyutum çok yüksek oluyor örneğin 24 form kullanarak yaptığım projenin exe boyutu 4.5mb civarında
Acaba hata ayıklama bilgileri (debugging information) dahil edilmiş durumda mıdır? Hata ayıklama bilgilerini kaldırdığınızda, dosyanın boyutu oldukça düşer.

Madshi gibi bir istisna yakalayıcı falan kullanıyorsanız dosyanın büyüklüğü daha da artar.

Ayrıca hata ayıklama bilgilerini kaldırmak birilerinin yaptığınız programı decompile etme olasılığını da azaltır.

Saygılarımla ve başarılar.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

[b]@Akin_Delphi[/b] yazdı:Acaba hata ayıklama bilgileri (debugging information) dahil edilmiş durumda mıdır? Hata ayıklama bilgilerini kaldırdığınızda, dosyanın boyutu oldukça düşer.
- Keşke öyle olsa...

Resim - Resim

Executable Packer ile sıkıştırdığımızda ise 635.904 byte(s)

Özellikle @aslangeri'nin bildirdiği resimler olayına dikkat etmelisin. Güzel noktaya değinmiş. Proje sadece bileşen veya koddan oluşmuyor, resource'lar da yer kaplıyor.
Resim
Resim ....Resim
Akin_Delphi
Üye
Mesajlar: 163
Kayıt: 06 Nis 2006 12:22

Mesaj gönderen Akin_Delphi »

mrmarman yazdı:
[b]@Akin_Delphi[/b] yazdı:Acaba hata ayıklama bilgileri (debugging information) dahil edilmiş durumda mıdır? Hata ayıklama bilgilerini kaldırdığınızda, dosyanın boyutu oldukça düşer.
- Keşke öyle olsa...

Resim - Resim

Executable Packer ile sıkıştırdığımızda ise 635.904 byte(s)

Özellikle @aslangeri'nin bildirdiği resimler olayına dikkat etmelisin. Güzel noktaya değinmiş. Proje sadece bileşen veya koddan oluşmuyor, resource'lar da yer kaplıyor.
Hocam siz benden daha kıdemlisiniz ve size karşı ukalalık etmek istemem ancak değişiklik yapıldıktan sonra BUILD ettiniz mi?

Saygılarımla,
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

"Project Build All"

Bir de sen dene istersen sendeki sonuçlar ne kadarlık bir oranda nasıl değişyor ?
Resim
Resim ....Resim
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

mrmarman yazdı:"Project Build All"

Bir de sen dene istersen sendeki sonuçlar ne kadarlık bir oranda nasıl değişyor ?
Üstad debug bilgilerini symbol vs debug info tüm seçenekleri eklediğimde 4-5 MB lık bir exenin 14-15 MB boyutuna çıktığını gördüm....

Ancak resimler olayında haklısınız. Resourceler dada...

Son olarak threadi başlatan arkadaşa hatırlamamız gereken bir konu var. Exe büyüklüğünden ziyade işlev (ilginç bir noktaya gidiyor thread hahaha) önemli. ayrıca hafızayı ekonomik kullanmak. Mesela benim 85+ formlu bir uygulamam var ve 3 ü hariç hepsini dinamik kullanıyorum. formların bazıları küçük partametre ayar grid ve değiştirme formları. Geriye en az 50-60 adam gibi form kalıyor ama exenini hafızayı kullanma oranı hiçde öyle anormal rakamlar değil.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
Cevapla