Olá Moacir, muito obrigado pela dica. Mas já fiz isso e tb continua dando o erro.
Obrigado. Moacir - Prisma escreveu: > Marcelo, > > Coloque a unit jpeg na clausula 'uses' do form > > [ ]´s > Moacir > > Marcelo escreveu: > > Amigos da lista, venho, desesperadamente, solicitar a ajuda de vcs. > > > > Estou tentando salvar um JPEG no Firebird + está dando o seguinte erro: > > "Bitmap image is not valid" > > > > O código como base que peguei está em: > > http://www.delphi.eti.br/ver_dica.php?id=6672 > <http://www.delphi.eti.br/ver_dica.php?id=6672> > > > > Na nossa lista, eu achei assuntos referente, peguei os exemplos mas > > também deu o mesmo erro. Por isso estou vindo até os amigos da > lista. Se > > alguém puder me ajudar eu agradeço. > > > > Estou usando o Firebird 1.5 - IBO 4.2.Ga - Delphi 6 Professional > > O campo no banco de dados está como Blob - Binary > > O campo na Query está como: BlobType - ftParadoxOle > > > > segue abaixo o código: > > > > const > > OffsetMemoryStream : Int64 = 0; > > > > para abrir e salvar a foto: > > > > var jpg1 : TJpegImage; > > > > if OPPicture.execute then > > image1.Picture.LoadFromFile(OPPicture.FileName); > > > > if OPPicture.FileName <>'' then > > begin > > jpg1 := TJpegImage.Create; > > jpg1.LoadFromFile(OPPicture.FileName); > > Dm1.TbPro.FieldByName('FotoPro').Assign(jpg1); > > jpg1.Free; > > end; > > > > para carregar a foto: > > > > var MemoryStream: TMemoryStream; > > Jpg: TJpegImage; > > > > if not(Dm1.TbPro.IsEmpty) and > > not((Dm1.TbPro.FieldByName('FotoPro') as TBlobField).IsNull) then > > try > > MemoryStream:= TMemoryStream.Create; > > Jpg := TJpegImage.Create; > > (Dm1.TbPro.FieldByName('FotoPro') as > > TBlobField).SaveToStream(MemoryStream); > > MemoryStream.Position := OffsetMemoryStream; > > Jpg.LoadFromStream(MemoryStream); > > Image1.Picture.Assign(Jpg); > > finally > > // Jpg.Free; > > MemoryStream.Free; > > end > > else > > Image1.Picture := Nil; > > end; > > > > Desde já agradeço a todos. > > > > > > > >