Einzelnen Beitrag anzeigen

machstuhl

Registriert seit: 17. Jul 2012
40 Beiträge
 
#15

AW: Aus TurboDB Blob in Stream schreiben

  Alt 16. Aug 2012, 10:35
Existiert das Formular bzw. das TImage auch zu diesem Zeitpunkt? Ich finde den hartkodierten Zugriff auf VCL-Controls in diesem Kontext etwas unglücklich, zumal da auch noch mit benannten Instanzen hantiert wird.
Ja, es existiert beides.

.. sollte aber eigentich funktionieren.

Im Stream befindet sich ein jpg Image?
Ist der Stream o.k. - sind darin Daten vorhanden?

eventuell noch eine Fehlerbehandlung einbauen
Delphi-Quellcode:
(FindField('BLOB1') As TBlobField).SaveToStream(MS);
ms.Position := 0;
J := TJPEGImage.Create;
try
  try
    J.LoadFromStream(MS);
    Form3.Image1.Picture.Assign(J);
  except
    on E:Exception do
      showMessage(E.Message);
  end;
finally
  j.free;
end;
Grüße
Klaus
done, bringt leider nicht viel, da er bei
Code:
Form3.Image1.Picture.Assign(J);
direkt rausspringt.

Daten befinden sich im Stream. Ein ShowMessage(IntToStr(MS.Size)); gibt mir den Wert 777835 zurück. realistisch?

Wie kann ich dem TImage verklickern, dass da ein JPEG ankommt, oder liegt da nicht der Hase im Pfeffer?+


edit:
Code:
J.LoadFromStream(MS);
J.SaveToFile('C:\test.jpeg');
speichert mir die File auf C. D.h. der Stream ist korreckt und das Bild ist im TJpegImage angekommen.

Geändert von machstuhl (16. Aug 2012 um 10:50 Uhr)
  Mit Zitat antworten Zitat