Recuerda también utilizar bloques TRY..FINALLY para evitar que queden cosas abiertas si algo falla.
Código Delphi
[-]
procedure TfrmPacientes.cargar_imagen;
Var
bmp: TBitmap; Stream: TStream;
bs : TMemoryStream;
begin
with DM.QryPacientes do
begin
Stream := dm.QryPacientes.CreateBlobStream(dm.QryPacientes.FieldByName('pxfoto'), bmWrite);
try
imgfoto.Picture.Graphic.SaveToStream(Stream);
finally
Stream.Free;
end;
end;
end;
procedure TfrmPacientes.mostrar_imagen;
var
Stream: TStream;
begin
Stream := dm.QryPacientes.CreateBlobStream(dm.QryPacientes.FieldByName('pxfoto'), bmRead);
try
try
Stream.Seek(0, soFromBeginning);
imgfoto.Picture.Graphic.LoadFromStream(Stream);
except
imgfoto.Picture := nil;
end;
finally
Stream.Free;
end;
end;