Einzelnen Beitrag anzeigen

Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.028 Beiträge
 
Delphi 10.4 Sydney
 
#1

PNG-Bild aus BLOB-Feld in Image laden

  Alt 20. Dez 2010, 20:50
Datenbank: Absolute Database • Version: 6 • Zugriff über: ABS-Komponenten
Hallo zusammen,

ich versuche gerade ein PNG-Bild, welches in einem BLOB-Feld einer Datenbank liegt, in eine Image-Komponente zu bekommen. Die Image-Komponente kann auch PNG darstellen, das Laden eines PNG-Bildes mittels OI funktioniert jedenfalls problemlos. Speichere ich das Bild
in einem FileStream und speicher es, dann kann ich es auch problemlos öffnen, also am Zugriff auf die DB oder an einem "korrupten" Header scheint es nicht zu liegen. Nach dem Aufrufen der Funktion erhalte ich eine Zugriffsverletzung...

Delphi-Quellcode:
var
  BlobStream: TStream;
  aq : tabsquery;
begin
      aq := tabsquery.Create(nil);
      aq.DatabaseName := 'xyz';
      aq.SQL.Add('SELECT bild FROM tbltest WHERE id = 1');
      aq.Open;
      BlobStream := aq.CreateBlobStream(aq.FieldByName('bild'),bmRead);
      ImageAnswer.Picture.Graphic.LoadFromStream(BlobStream); // liegt auf der Form!!!
      BlobStream.Free;
      aq.Close;
      aq.Free;
end;
Kann sich jemand vorstellen, warum das nicht funktioniert???

Danke im Voraus,
Michael
Michael Kübler
  Mit Zitat antworten Zitat