Fórum Tadoblobfield - Porque esse código dá erro #243882

21/07/2004

0

var
StreamFig : TADOBlobStream;
StreamFig1 : TADOBlobStream;
JpegImage : TJpegImage;
StreamArq : TFileStream;
BitMap : TBitmap;
begin
StreamFig := TADOBlobStream.Create(dm1.adotable2.FieldByName(´foto1´) as TADOBlobField, bmRead);
StreamFig.SaveToFile(´c:\alixo\arquivo.bmp´);
StreamFig.Seek(78, soFromBeginning);
Jpegimage := Tjpegimage.Create;
BitMap := TBitMap.Create;

BitMap.LoadFromStream(StreamFig);

JPEGImage.Assign(BitMap);
StreamFig1 := TADOBlobStream.Create(dm1.adotable1.FieldByName(´Foto1´) as TBlobField, bmWrite);
JPEGImage.SaveToStream(StreamFig1);

StreamFig.Free;
JPEGImage.Free;
StreamArq.Free;
StreamFig1.Free;
BitMap.Free;

dm1.adotable1.Post;


Tito00

Tito00

Responder

Posts

21/07/2004

Persist

Tente utilizar TBlobField e TMemoryStream.
MS := TMemoryStream.Create;
TBlobField(AdoTable.FieldByName(´foto´)).SaveToStream(MS);
MS.Position := 0;
Bitmap.LoadFromStream(MS);
Jpeg.Assign(Bitmap);
MS.Clear;
Jpeg.SaveToStream(MS);
MS.Position := 0;
TBlobField(AdoTable.FieldByName(´foto´)).LoadFromStream(MS);
AdoTable.Post;

Pq o Seek(78) :?:


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar