Autor Beitrag
kampfkoloss23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 96



BeitragVerfasst: So 12.01.03 18:51 
In meinem Programm lade ich am Anfang einige Bitmaps in Variablen. Ganz am Ende werden diese dann free gesetzt.

Wenn allerdings dazwischen etwas schiefgeht, werden sie nicht mehr free gesetzt. Soll man dann ein extra free procedure für die 10 Bilder schreiben und überall hinter eventuelle Fehlerquellen in try und execpt stellen ??

Gibt es ein EReignis das Ultimativ bei einem Fehler aufgerufen wird, wo man diese dann einfach reinschreiben kann.

Oder soll ich try und expecpt einfach weglassen?? (unwahrscheinlich,dass ein Fehler auftritt, wenn doch, dann geht ja sowie das Programm nicht mehr)
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: So 12.01.03 19:45 
Du hast recht, eigentlich sollte man jeden einzelnen Befehl im ganzen Programm absichern. Aber überleg mal: wenn z.B. Word, Excel, oder Spiele wie UT2K3 abstürzen, sind die im Bruchteil einer Sekunde weg. Glaubst Du, die geben da noch speicher frei? Ich würde mir da nicht den Kopf zerbrechen. Wenn das Programm hängt, dann ist halt Speicher futsch.

Aber Recht hast du schon. Ich habe noch nie ein Programm so extem abgescihert, aber probier mal die Komponente TApplicationEvents und behandle mit dem Ereignis OnException. Das müsste gehen.

Und noch was: Die Bitmaps gibst du ja am Programmende frei. Wenn der Fehler also nicht ausgerechnet beim Programmende eintritt, dann kannst du deine Bitmaps trotzdem freigeben (Es sei denn, die Exception ist so brachial, dass das ganze Programm hängt, aber dann ist eh' Land unter).