AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Ressourcen-Datei vergrößert mein EXE. Warum???
Thema durchsuchen
Ansicht
Themen-Optionen

Ressourcen-Datei vergrößert mein EXE. Warum???

Ein Thema von max666 · begonnen am 31. Jan 2004 · letzter Beitrag vom 31. Jan 2004
Antwort Antwort
max666

Registriert seit: 21. Dez 2003
50 Beiträge
 
#1

Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 16:21
Hallo!

Ich bin dabei ein kleines Programm zu schreiben.
Dabei binde ich ein paar BMP-Bilder von einer RES-Datei in mein Programm ein.
Das funktioniert auch alles.

Nur leider ist mir aufgefallen, dass die Compilierte EXE-Datei um so größer wird, je mehr Bilder ich in die RES-Datei einbinde.
Um den Vorgang auf die Spitze zu treiben, habe ich ein Bild 10 mal in die RES-Datei eingebunden. Danach war die RES-Datei ca. 12 MB groß. Anschließend habe ich das Project compiliert und die erzeugt EXE-Datei war ca. 13 MB groß, obwhl ich die Bilder in Delphi nicht eingebunden habe.
Ich kann als sagen, dass die Bilder nicht erst zur Laufzeit, sondern schon beim Compilieren in die EXE-Datei eingebunden werden. Um eine Datei möglichst klein zu halten, ist dies jedoch nicht erwünscht.

Mit folgenden Code hole ich die Bilder in Delphi hinnein.


Delphi-Quellcode:
implementation

{$R *.DFM}
{$R resbitmap.res}


procedure loadbmp;
begin
Form1.image1.Picture.Bitmap.LoadFromResourceName(0,'bild01');
Form1.Image5.Picture.Bitmap.LoadFromResourceName(0,'bild02');
Form1.Image9.Picture.Bitmap.LoadFromResourceName(0,'bild03');
usw...
Hat jemand Rat?

Gruß aus den Emsland
max666
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 16:27
Ich versteh jetzt deine Frage nicht ?

Wenn du die Bilder in deine Exe einbindest, ist doch klar, dass sich die Exe auch vergrössert, oder etwa nicht ?

Wenn du die Exe kleiner haben möchtest, kannst du die Bilder auch normal laden:
Image1.BitMap.LoadFroamFile('C:test\bmp'); Allerdings müsstest du dann die Bilder extra mitliefern...
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
max666

Registriert seit: 21. Dez 2003
50 Beiträge
 
#3

Re: Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 16:46
Hallo!

Ich glaube ich habe das Prinzip nicht verstanden.

Ist eine RES-Datei nicht dazu da, dass man die Bild darin erst zu Laufzeit laden kann, um so die Größe einer EXE-Datei möglichst klein zu halten?

Welchen Sinn hat eine RES-Datei, wenn sie nach dem Compilieren überflüssig geworden ist, da ihre Bilder sich in der EXE-Datei befinden.

Wie kann ich nun die Bilder zur Laufzeit einbinden, um mein Ziel - die Dateigröße der RES-Datei möglichst klein zu halten, zu erreichen.

Wäre es

Gruß
max666
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 16:48
Mit einer Res-Datei speicherst du die Bilder als Ressource in deiner Exe !
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
Dagon

Registriert seit: 13. Jul 2003
505 Beiträge
 
Delphi 7 Professional
 
#5

Re: Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 16:50
Eine RES-Datei ist dazu da, Ressurcen (Bilder, Sound, Exe's etc.) direkt ins Pogramm ein zu binden. So ist alles in einer Exe drin, und nicht lose in Ordner oder so.
Wenn du also Bilder per RES einbindest, so wird die Exe dementsprechend auch grösser.
  Mit Zitat antworten Zitat
max666

Registriert seit: 21. Dez 2003
50 Beiträge
 
#6

Re: Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 16:53
Hallo!

Du hast Recht.

Wenn ich Bilder so eintrage:

Delphi-Quellcode:

image2.Picture.Bitmap.LoadFromFile('c:\test\test01.bmp');
werden sie erst zu Laufzeit eingebunden. Jetzt habe ich aber die einzelnen Bilder ín meinen Projekt rum fliegen.

Kann man es nicht machen, dass die Bilder in einer großen Datei gesammelt und dennoch erst zu Laufzeit geladen werden können.

Gruß
max666
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 16:57
Du könntest eine Ressource-DLL verwenden.
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
max666

Registriert seit: 21. Dez 2003
50 Beiträge
 
#8

Re: Ressourcen-Datei vergrößert mein EXE. Warum???

  Alt 31. Jan 2004, 17:01
Hallo!

Davon habe ich schon was gelesen. Gute Idee und danke schon mal für Dein Wissen.

Gruß
max666
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:20 Uhr.
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