sqlstr:='select * from tupian where bt= '+chr(39)+RzListView12.Selected.Caption +chr(39);
with DataModule1.ADOQuery4 do
begin
close;
SQL.Clear;
SQL.Add(sqlstr);
open;
first;
try
t_ms:=Tmemorystream.Create;
t_jpg:=Tjpegimage.Create ; TBlobField(Fieldbyname('photo')).SaveToStream(t_ms);//将'photo'图片读入到内存流t_ms
t_ms.size;//为什么是0?
t_ms.Position:=0; t_jpg.LoadFromStream(t_ms) ;
t_jpg.JPEGNeeded; Image8.Picture :=nil;
Image8.Picture.Bitmap.Assign(t_jpg) ;
finally
t_ms.Free;
t_jpg.Free;
end; end;
DataModule1.ADOQuery4.Close;
但是为什么TBlobField(Fieldbyname('photo')).SaveToStream(t_ms)不能读出图片。问题二、在另外一个程序中,TBlobField(Fieldbyname('photo')).SaveToStream(t_ms)好像不能连续读数据,比如说要一次性读6张图片,用一个循环来做,第一张图片可以读出来,第二、三、四时,那个内存流的size都是为0,可能最后一个又有数据?很奇怪,这个问题困扰了我几天,一直没有解决,请高手指教!
我的是83039548
或者MSN:[email protected]