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).