我的Access数据库里包含了ole字段
如何利用delphi6对ole字段内存储的文件进行读写
我用的是OleContainer,但是失败!
帮帮忙!
如何利用delphi6对ole字段内存储的文件进行读写
我用的是OleContainer,但是失败!
帮帮忙!
解决方案 »
- 我用panel.handle获取视频回放,第一次回放没有问题,第二次回放就有问题
- 急,关于text控件的一个奇怪的问题!就是程序运行后,在TEXT控件里的文本,无法"复盖",无论"insert键"怎么用,都是插入状态,不会是替换状态...
- 关于listview里的item的双击问题!处男第一问!呵呵,只能给100分了
- 高分求教大量数据插入到数据库的速度慢的问题
- 你们平时还上哪些其它的delphi论坛?
- 寂寞的程序员.
- delphi中函数的返回值用Result和函数的名称有什么不同
- 求教怎么保存数据表,200分求教
- 如何汉化用installshied制作的安装程序
- 关于delphi
- 请高手指教一个组件的制作
- 我用右键单击复制一个文件到另外一个地方,怎么获得源地址和目标地址?
procedure TfrmResPaper.dgMainDblClick(Sender: TObject);
var
Query:TADOQuery;
Stream:TADOBlobStream;
begin
inherited;
if not ((DMResPaper.State=dsBrowse) and (DMResPaper.RecordCount>0)) then Exit; dgMain.Enabled:=False;
Panel1.Enabled:=False;
Query:=TADOQuery.Create(nil);
with Query do
begin
Connection:=Pubconn;
SQL.Clear;
SQL.Add('SELECT ID,RES_NO,PAPER FROM B_PAPER WHERE ID='''+DMResPaper.FieldByName('ID').AsString+''''
+' AND RES_NO='''+DMResPaper.FieldByName('RES_NO').AsString+''' AND PAPER IS NOT NULL');
Open;
if RecordCount=0 then
OlePaper.DestroyObject
else
begin
Stream:=TADOBlobStream.Create(TBlobField(FieldByName('PAPER')),bmRead);
try
OlePaper.LoadFromStream(Stream);
finally
Stream.Free;
end;
end;
Query.Free;
end;
dgMain.Enabled:=True;
Panel1.Enabled:=True;
EpsDLG('圖紙載入完畢。');
end;//Save Paper
procedure TfrmResPaper.bbnSavePaperClick(Sender: TObject);
var
Query:TADOQuery;
Stream:TADOBlobStream;
begin
if not ((OlePaper.State=osLoaded) and
(DMResPaper.State=dsBrowse) and (DMResPaper.RecordCount>0)) then Exit;
Query:=TADOQuery.Create(nil);
with Query do
begin
Connection:=Pubconn;
SQL.Clear;
SQL.Add('SELECT ID,RES_NO,PAPER FROM B_PAPER WHERE ID='''+DMResPaper.FieldByName('ID').AsString+''''
+' AND RES_NO='''+DMResPaper.FieldByName('RES_NO').AsString+'''');
Open;
Edit;
Stream:=TADOBlobStream.Create(TBlobField(FieldByName('PAPER')),bmReadWrite);
try
try
OlePaper.SaveToStream(Stream);
finally
Stream.Free;
end;
Post;
EpsDLG('圖紙保存成功!');
except
EpsDLG('圖紙保存失敗!');
end;
Query.Free;
end;end;
Query:TADOQuery;
Stream:TADOBlobStream;
但是 LoadFromStream();的参数属性应该是:TStream;