Habs netterweise mal ausprobiert.
Folgendes ist falsch:
TBitmap.LoadfromStream erwartet einen Stream, der mit einem Bitmap gefüllt ist. JPEG scheint nicht zu gehen. Desweiteren musst du die Position, von der an im Stream gelesen wird, wieder auf 0 setzen. Als letztes ist noch der try except Block falsch.
Wenn keine
Exception auftritt wird Screenstream nicht wieder freigegeben. Was du wahrscheinlich meinst ist ein try finally Block.
Gute Nacht
Christian