Danke für die beiträge,
@HolgerX
Danke für den hinweis mit den magic bytes. Aber die jeweiligen streams müsste man nach dem check doch erstmal dem entsprechenden bild (TBitmap, TPNGImage, TGIFImage, TJPEGImage) zuweisen bevor man diese dem TGraphic object übergibt.
Ich werde diese variante mit der funktion von Uwe kombinieren und mal schauen ob da wa pasenses rauskommt.
Brauchst nur dort wo z.B.:
if CheckMagicNo(ByteArr,C_Magic_BM) then exit;
steht ein
if not Assigned(result) and CheckMagicNo(ByteArr,C_Magic_BM) then result := TBitmap.Create;
und unten dann ein
if Assigned(result) then result.LoadFromStream(RS);
(Freihand zusammen geschrieben/kopiert
)