"对文档的编辑过多",这是什么错误? ( 积分: 100 )

  • 主题发起人 主题发起人 独钓寒江
  • 开始时间 开始时间

独钓寒江

Unregistered / Unconfirmed
GUEST, unregistred user!
我从试题库中将保存的Word文件提出来,大概有1万多道题,
我采用的方法是将每一道题用流的形式保存为临时文件,然后再插入到一个Word文件当中去,但总是提示“对文档的编辑过多,此操作将无法完成”,程序停止,
怎么回事?
 
我从试题库中将保存的Word文件提出来,大概有1万多道题,
我采用的方法是将每一道题用流的形式保存为临时文件,然后再插入到一个Word文件当中去,但总是提示“对文档的编辑过多,此操作将无法完成”,程序停止,
怎么回事?
 
代码如下:
var:msnr,msda:Tmemorystream;
.
....
wd:=createoleobject('word.basic');
--循环--
tblobfield(ADOQuery1.FieldByName('stnr')).SaveToStream(msnr);
tblobfield(ADOQuery1.FieldByName('stda')).SaveToStream(msda);
msnr.Position:=0;
msda.Position:=0;
msnr.SaveToFile('c:/aa.doc');
msda.SaveToFile('c:/bb.doc');
wd.insert(inttostr(i)+'.'+' ');
wd.insertfile('c:/aa.doc');
wd.insert(#13);
wd.insert(' 答案:');
wd.insertfile('c:/bb.doc');
wd.insert(#13);
ADOQuery1.Next;
//结束循环
 
插入一定条数记录后保存文件,重新打开再插入试试
 
改为用rxlib中的rxdbrichedit控件,进行复制、粘贴,现在正在运行,还没出错。
 
打开word后是否将操作的临时文件关闭呀,word的操作对象过多吧
 
每次循环都释放Tmemorystream对象试试
 
改为用rxlib中的rxdbrichedit控件,进行复制、粘贴,现在正在运行,还没出错。
 
多人接受答案了。
 
后退
顶部