Autor Beitrag
wulfskin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1349
Erhaltene Danke: 1

Win XP
D5 Pers (SSL), D2005 Pro, C, C#
BeitragVerfasst: Do 27.02.03 17:50 
Hallo!

Ich habe mal wieder ein Problem: Um die Bilder meiner Digitalkamera bequem anzuschauen, habe ich mir eine Diashow programmiert. Sie läuft eigentlich auch ganz ordentlich nur leider wird mit der Zeit mein Speicher immer voller bis zu letzt ein Parameterfehler auftritt. Das passiert nach ca. 50 Bildern. Die Bilder haben eine Größe von 2048 * 1536. Ich verstehe nicht so recht warum, denn ich benutze insgesamt nur ein BitMap, dem beim Wechsel ein neues JPEG zugeordnet wird. Da die ursprünglichen Dateien JPEGs sind, wandle ich diese erst in BitMaps um und zeichne sie dann mit StretchDraw auf eine PaintBox. Dies geschieht in dem OnPaint-Ereignis.
Welche Möglichkeiten gibt es den Speicher freizugeben, bzw. die Speichergröße der BitMaps zu veringern?
Achja, die Methoden Dormant und FreeImage haben mir keinen erkennbaren Geschwindigkeits- und Speichervorteil gebracht, ich benutze sie aber trotzdem.

Danke Hape

_________________
Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
GruppeCN
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 322



BeitragVerfasst: Do 27.02.03 20:45 
Ich würde es mal mit der Image Komponente versuchen. Dann kannst du die Grafiken direkt anzeigen und musst sie nicht erst umwandeln.

_________________
Warum sind die Sachen, die du suchst, immer da, wo du zuletzt nachsiehst?
Weil du aufhörst zu suchen, wenn du sie gefunden hast.
derDoc
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 623

Win Vista Prof
D2007 Prof
BeitragVerfasst: Do 27.02.03 20:47 
Wenn du eine Image Komponente benutzt musst du die Bilder auch mit
Image1.Picture.Bitmap.Free;
wieder freigeben, sonst schreibst du die immer weiter in deinen Arbeitsspeicher, bis der voll ist. Unter 9x-Systemen ist das ein beliebter Absturzgrund.

_________________
MfG derDoc
There are only 10 types of people: those who understand binary and those who don't.
wulfskin Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1349
Erhaltene Danke: 1

Win XP
D5 Pers (SSL), D2005 Pro, C, C#
BeitragVerfasst: Fr 28.02.03 14:49 
Hallo!

Zunächst recht herzlichen Dank für Eure Antworten!
Leider haben sie mir nicht wirklich weitergeholfen, da ich keine Image-Komponente benutzen kann, bzw. dies kein Unterschied machen würde, da ich die Bilder umwandeln muss, damit ich sich verkleinert, bzw. vergrößert darstellen kann. Das ganze soll nämlich zunächst eine Miniaturansicht sein und kann dann in den Vollbild geschalten werden. Und ob ich zum Anzeigen nun eine Image oder PaintBox-Komponente benutze, dürfte wohl kein Unterschied machen, oder doch?
Übrigens, den Tipp von derDoc benutze ich schon, doch es hilft nix!

Hat jemand noch einen Tipp?

Vielen Dank,
Hape

_________________
Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.