Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zu Große EXE-Datei (https://www.delphipraxis.net/71090-zu-grosse-exe-datei.html)

hille 8. Jun 2006 18:05


Zu Große EXE-Datei
 
Hi,

mein Problem:
Ich programmiere gerade ein ganz einfaches Spiel. Im Moment benutze ich noch bmp- Datein, welche ich durch DELPHIX-Komponenten in das Programm einbinde.
Dabei wird aber die Exe-Datei, jetzt schon 5 MB richtig groß (Ich habe noch nicht mal
20% von meinem Programm geschrieben bzw. Bilder gemalt!!!).

So, gibt es eine Möglichkeit, das die EXE-Datei, auf andere Dateien zugreift (z.B. wo die Bilder sind, die Dialoge, die Units oder so) und somit diese EXE nicht so groß wird???

Hoffe ihr könnt mir helfen.

Hille

mkinzler 8. Jun 2006 18:11

Re: Zu Große EXE-Datei
 
Du kannst aus einer exedatei problemlos auf andere Dateien zugreifen. Wie hast du die Bilder in die Exe eingebunden?

hille 8. Jun 2006 18:15

Re: Zu Große EXE-Datei
 
Also im Moment nur durch TImage. Aber ich will die Bilder bald durch DXDraw usw. darstellen lassen.

Hille

himitsu 8. Jun 2006 18:17

Re: Zu Große EXE-Datei
 
BitMap's sind unkomprimierte Bilder ... versuch mal auf JPegs, GIFs, oder ähnliches umzusteigen.

Notfalls diese Bilder dann direkt in den Programmresourcen, oder halt extern zu speichern (Tipp: viele Komponenten kennen sowas wie LoadFromFile), da einge der StandardDelphiKomonenten intern nur als BitMap speichern, egal in welchem Format man die bilder reingeladen hat.
Und dann halt erst beim Programmstart in die gewünschte Komponente reinladen.

hille 8. Jun 2006 18:20

Re: Zu Große EXE-Datei
 
Ja, das kann das Problem lösen! Logisch! Ich habe nämlich die Bilder schon eingefügt.
Ich Depp. Jo Danke!

Ach ja. Wegen JPEG´s und GIF´s: da wird der Hintergrund nicht Transparent gemacht, auch wenn ich Transparent auf true setze.

Hille

semo 8. Jun 2006 18:25

Re: Zu Große EXE-Datei
 
du kannst die bitmaps in eine resourcedatei (*.res file) auslagern,
deise resourcedatei wird beim kompilieren mit in die exe eingebunden.
Damit dürfte deine exe wesentlich kleiner sein.

Damit du die Bitmaps laden kannst verwendest du die TBitmap.LoadFromResourceName Methode.
Um eine Resourcedatei zu erzeugen gibts bei den Tools in Delphi einen Bildeditor...

edit: zu den unkomprimierten Bildern kann man entgegnen: setz die Farbtiefe der Bitmaps herunter, diese verbrauchen damit wesentlich weniger Speicher. Dabei musst du dann aber auf die Qualität der Bitmaps achten.

hille 8. Jun 2006 18:32

Re: Zu Große EXE-Datei
 
Ah, dazu ist der Befehl gut. Jo danke. Ich schau mir das gleich mal an.
Vielen Dank.

Hille

Cyberbob 8. Jun 2006 19:25

Re: Zu Große EXE-Datei
 
Wenn die Bilder als jpg gespeichert werden, muss die Unit JPEG mitgeladen werden. Dadurch wird das Programm wieder grösser, das macht also nur Sinn, wenn man viele Bilder hat. Bei 2 oder 3 kleinen Bildern erreicht man eher das gegenteil.

Luckie 8. Jun 2006 22:06

Re: Zu Große EXE-Datei
 
Zitat:

Zitat von computer-glossar.de
du kannst die bitmaps in eine resourcedatei (*.res file) auslagern,
deise resourcedatei wird beim kompilieren mit in die exe eingebunden.
Damit dürfte deine exe wesentlich kleiner sein.

Die Logik erklär mir mal. Wenn sie jetzt schon fest mit den TImage-Komponenten verknüoft sind, dann sind sie ja in der Exe als Ressource drinne. Warum sollte die Exe bei deiner Methode kleiner werden.

Alternativ kann man sie auch als Ressourcen in eine DLL packen, wenn man sie zusammen haben will.

Olli 8. Jun 2006 23:56

Re: Zu Große EXE-Datei
 
Für Transparenz bei verlustfreier Kompression kann ich nur PNG empfehlen ;)

Im Falle von Animationen nehme man MNG.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:46 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz