我现在从blob中取数据,为什么出现“metafile is not valid”的错误,源码如下:
f:=Tmemorystream.Create;
try
tblobfield(query1.FieldByName('image')).SaveTostream(f);
boxmf.LoadFromstream(f); //出错的地方
finally
f.free;
end;
同时,我把它按照下面这样操作,元文件却可以正常显示:
try
tblobfield(query1.FieldByName('image')).SaveTofile('..\ljb.emf');
boxmf.LoadFromfile('..\ljb.emf');
finally
deletefile('..\ljb.emf');
end;
请高手帮我分析一下,万分感谢!!!
f:=Tmemorystream.Create;
try
tblobfield(query1.FieldByName('image')).SaveTostream(f);
boxmf.LoadFromstream(f); //出错的地方
finally
f.free;
end;
同时,我把它按照下面这样操作,元文件却可以正常显示:
try
tblobfield(query1.FieldByName('image')).SaveTofile('..\ljb.emf');
boxmf.LoadFromfile('..\ljb.emf');
finally
deletefile('..\ljb.emf');
end;
请高手帮我分析一下,万分感谢!!!
解决方案 »
- 取硬盘物理序列号在Delphi2011乱码
- 郁闷,提出辞职都快两个月了,公司还不让走。。。 散分
- 有什么办法可以在IE浏览器中显示类似于windows的资源浏览器的结构.
- 有关Ttreeview控件的问题!
- 程序员应该掌握什么样的技术.
- 请问哪位高人可以告诉我怎样调用WIN32 API设置两个窗口分布在不同的显示器上//很急
- 请问ibm笔记本无法显示全屏,如何解决?
- 5.richedit1.wantreturns:=True;button1.default:=true;结果运行时在richedit中打回车不能执行Button1,打ctrl+ENter也不行。
- 小妹?^_^?捉虫:form.showmodal与form.show有甚么不同!
- 怎样把一个目录下所以的文件导入数据库
- 象四国,围棋,这些程序中棋的布局是用什么做的啊?
- 关于全局函数与全局变量的问题
procedure TForm1.btnShowBlobsClick(Sender: TObject);
var
sFileName: String;
BS : TADOBlobStream;
begin
BS :=
TADOBlobStream . Create(TBlobField(adodsBlobs.FieldByName('Blobs')) ,
bmRead) ;
try
sFileName := ExtractFilePath(Application.ExeName)+'tmpBlob';
sFileName := sFileName + '.' +
adodsBlobs.FieldByName('Extension').AsString;
BS.SaveToFile(sFileName) ;
OleContainer1.CreateObjectFromFile(sFileName, False);
finally // wrap up
BS.Free ;
end ; // try/finally
end ;
boxmf(boxmetafile)。我觉得可能是数据格式的问题,但我是用内存流的格式存进去的