AddObject ist schon genau richtig. Du erstellst dir einfach ein TMemoryStream-Objekt (siehe Hilfe), machst dann bei deinem TJPEGImage ein SaveToStream und diesen Stream übergibst du dann bei AddObject.
Wie ich schon geschrieben hatte: Der Parameter für den Filename muß lediglich auf eine existierende Datei verweisen. Das muß nicht zwingend eine Datei sein, die die zu versendenden Daten enthält. Versendet wird der Inhalt aus dem Stream. Was das mit dem Filename überhaupt soll habe ich nie rausgefunden. Ist evtl. nur ein Bug im
Indy.