ورود

View Full Version : نمایش فیلد عکس



farhad110
چهارشنبه 10 بهمن 1386, 09:25 صبح
سلام. برای نمایش عکس به مشکل برخوردم
دیتابیس sql server
نوع فیلد عکس image
کد زیر رو در رویداد datachange ، برای نمایش عکس در یک Timage نوشتم:

procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
var
BlobStream: TStream;
JPEGImage: TJPegImage;
Ext: string;
begin
if (Field = nil) or (Field = ADOTable1pic) then begin
if ADOTable1ext.AsString <> '' then begin
BlobStream := ADOTable1.CreateBlobStream(ADOTable1pic,bmRead);
try
Ext := UpperCase(ADOTable1ext.AsString);
if Ext = '.BMP' then
Image1.Picture.Bitmap.LoadFromStream(BlobStream)
else if Ext = '.JPG' then begin
JPEGImage := TJPEGImage.Create;
try
JPEGImage.LoadFromStream(BlobStream);
Image1.Picture.Assign(JPEGImage);
finally
JPEGImage.Free;
end;
end;
finally
BlobStream.Free;
end;
end else
Image1.Picture := nil;
end;
end;
اما زمان اجرا با error زیر روبرو میشم:
http://i27.tinypic.com/2zsve5k.jpg

لطفا راهنمایی کنید.
تشکر

vcldeveloper
چهارشنبه 10 بهمن 1386, 16:51 عصر
BlobStream : TMemoryStream;

m-khorsandi
چهارشنبه 10 بهمن 1386, 18:00 عصر
در مورد ذخیره و بازیابی اطلاعات از روی هارد به دیتابیس(که شامل تصاویر هم میشه) و برعکس چندین بار بحث شده :
و بازهم مشکل ذخیره عکس !! (http://barnamenevis.org/forum/showthread.php?t=18123)
فیلد (کمک فوری)blob (http://barnamenevis.org/forum/showthread.php?t=33691)