装入 oleContainer 后,好象不能保存。如果要编辑的话,还是直接打开 word 进行编辑,
编辑完存成文件,再把文件装入 olecontainer 显示。
装入 OleContainer 的操作如下:
procedure TfmSetPerson.ReadDoc(const i: byte);
var
BStream: TStream;
FStream: TFileStream;
begin
if OleContainer1.State <> osEmpty then OleContainer1.Close;
if tbKp01.FieldByName('Doc1').IsNull then begin
ShowMessage('该文档为空');
abort
end;
BStream := tbKp01.CreateBlobStream(tbKp01.FieldByName('Doc'+IntToStr(i)),bmRead);
FStream := TFileStream.Create('C:/tempdoc.doc',fmCreate); //存入临时文件
FStream.CopyFrom(BStream,BStream.Size); //从流中读入
BStream.Free;
FStream.Free;
OleContainer1.CreateObjectFromFile('C:/tempdoc.doc',false); //从文件创建ole对象
end;