Einzelnen Beitrag anzeigen

LingNeu

Registriert seit: 18. Dez 2006
164 Beiträge
 
Delphi 7 Enterprise
 
#1

Wie speichere ich ein DB-Blob in ein TImage

  Alt 9. Sep 2014, 16:12
Hallo Programmierfreunde,
vor kurzem habe ich eine perfekte Hilfe durch himitsu bekommen. Ich wollte damals ein Bild (TImage) in eine Datenbank abspeichern. Dank himitsu habe ich das dann geschafft.
Jetzt probiere ich schon die ganze Zeit herum, anders herum das hinzubekommen. Ich habe ein Bild in der Datenbank und möchte diese auf einem normalen TImage anzeigen lassen.
Bei dem nachfolgendem Quelltext kommt keine Kompilierfehlermeldung. Erst wenn ich die Prozedure auslöse erhalte ich eine Exception der Klasse EInvalidGraphic bzw. die Bitmap ist ungültig.
Vielleicht kann mir jemand von euch einen Hinweis geben. Besten Dank!

Delphi-Quellcode:
procedure TForm1.btn_ObjektClick(Sender: TObject);
var sname1,sname2: string;
ms: TMemoryStream ;
begin
ed_Name1.text := TDB_O['oName1']; //vorhandene DB-Daten in TextEdit kopieren
ed_Name2.Text := TDB_O['oName2']; //vorhandene DB-Daten in TextEdit kopieren
//Jetzt noch DB-Bild in ein TImage (img_Objekt) bringen
if not VarIsNull(TDB_O['oBild']) then begin
   ms := TMemoryStream.Create ;
   TBlobField(TDB_O.FieldByName('oBild')).SaveToStream(ms);
   ms.Position := 0;
   img_Objekt.Picture.Bitmap.LoadFromStream(ms);
   ms.Free ;
end;
end;
Wenn man denkt, dann denkt man nur, das man denkt!
  Mit Zitat antworten Zitat