M
mingzi411
Unregistered / Unconfirmed
GUEST, unregistred user!
相关代码如下:
///////////////启动word
//检查word是否已经启动
FWord:=GetActiveOleObject('Word.Application');
if FWord.Visible=False then //已经启动 检查word是否已经显示
begin
FWord.Quit;//如果不可见就退出这个word
FWord:=Unassigned;
raise Exception.Create('');//引发异常 重新启动word
end;
if FWord.Documents.Count<>0 then
bNew:=False
else //如果启动了word,但没有word文档 置新建标志为真
bNew:=True;
except
try //如果没有启动就启动Word
FWord:= CreateOleObject('Word.Application');
bNew:=True;
except
MessageDlg('创建Word对象失败!',mtError,[mbOK],0); //mtInformation
Result:=False;
Exit;
end;
end;
if bNew then
FWord.Visible:=False;//新启动的word应该隐藏
///////////根据模板创建word文档
FDoc:=FWord.Documents.Add(TempLatePath,False,0,False);
………………………………………………
后台处理文档代码(插入文本、域填充之类)
………………………………………………
问题是运行包含上面代码的程序时,此时如果有打开的word文档
有的时候会弹出一个保存word的对话框,有的时候还有远程服务没有响应的对话框,而我们的要求所有的word的处理都是在后台处理的,处理好之后保存在本地磁盘中再展现出来。大家帮忙分析下原因,该如何解决。谢谢
///////////////启动word
//检查word是否已经启动
FWord:=GetActiveOleObject('Word.Application');
if FWord.Visible=False then //已经启动 检查word是否已经显示
begin
FWord.Quit;//如果不可见就退出这个word
FWord:=Unassigned;
raise Exception.Create('');//引发异常 重新启动word
end;
if FWord.Documents.Count<>0 then
bNew:=False
else //如果启动了word,但没有word文档 置新建标志为真
bNew:=True;
except
try //如果没有启动就启动Word
FWord:= CreateOleObject('Word.Application');
bNew:=True;
except
MessageDlg('创建Word对象失败!',mtError,[mbOK],0); //mtInformation
Result:=False;
Exit;
end;
end;
if bNew then
FWord.Visible:=False;//新启动的word应该隐藏
///////////根据模板创建word文档
FDoc:=FWord.Documents.Add(TempLatePath,False,0,False);
………………………………………………
后台处理文档代码(插入文本、域填充之类)
………………………………………………
问题是运行包含上面代码的程序时,此时如果有打开的word文档
有的时候会弹出一个保存word的对话框,有的时候还有远程服务没有响应的对话框,而我们的要求所有的word的处理都是在后台处理的,处理好之后保存在本地磁盘中再展现出来。大家帮忙分析下原因,该如何解决。谢谢