Huhu.
Mit folgendem Code versuche ich ein Stream aus einem TImage in ein Graphic - Feld einer Datenbank zu schreiben. Es scjeint, als wäre der Stream leer, da beim Lesen des Feldes immer eine Fehlermeldung erzeugt wird.
Code für das Schreiben:
Delphi-Quellcode:
var
BlobStream: TStream;
PictureStream: TStream;
begin
PictureStream := TMemoryStream.Create;
Image1.Picture.SaveToStream(PictureStream);
BlobStream :Table1.CreateBlobStream(Table1.FieldByName('Thumbnail'), bmWrite);
BlobStream.Write(PictureStream, PictureStream.SIZE);
BlobStream.Free;
PictureStream.Free;
end;
Code für das Auslesen:
Delphi-Quellcode:
var
JpegImage: TJPEGImage;
BlobStream: TStream;
begin
BlobStream := Table1.CreateBlobStream(Table1.FieldByName('
Thumbnail'), bmRead);
JpegImage := TJPEGImage.Create;
JpegImage.LoadFromStream(BlobStream);
// <--- Hier wird eine Exception ausgelöst, BlobStrem ist () (leer?)
Image1.Picture.Assign(JpegImage);
Image1.Visible := True;
JpegImage.Free;
BlobStream.Free;
end;
Ist der Fehler beim Schreiben oder beim Lesen zu suchen?
LG Mathias