关于程序调用WORD的问题(100分)

  • 主题发起人 主题发起人 sunyb
  • 开始时间 开始时间
S

sunyb

Unregistered / Unconfirmed
GUEST, unregistred user!
这段代码在个别电脑上不会启动WORD,不知道为什么:
uses Comobj

ar WordApp: OLEVariant;

try
WordApp := CreateOleObject('Word.Application');
except
Raise Exception.Create('无法打开Word,请确认已安装Word。');
end;

执行后提示'无法打开Word,请确认已安装Word。',个别电脑上有时正常有时不正常。
调用EXCEL却正常。重新覆盖安装OFFICE2000也没用。
是不是跟某些程序冲突了?
 
改委
WordApp := CreateOleObject('Word.basic');
试试
 
利用Servers控件试试
 
这个问题是在一个客户那里发生的,所以不能调试。
我用的是D5,SERVER控件是97的所以不大想用。
 
记得有人好像是尝试了三个CreateOleObject('word.application')就可以了
try
Word := CreateOleObject('word.application');
except
try
Word := CreateOleObject('word.application');
except
try
Word := CreateOleObject('word.application');
except
...
 
把97升为2000吧,你会发现用Servers的好处!
 
我以前遇到过这种情况:
一会儿能够打开WORD,一会儿即说“无法打开Word,请确认已安装Word”,害得我差点吐血。

原因:机器太老+杀毒软件在WORD启动时进行查毒(如瑞星),查毒还没完成时,估计已经超过WORD的响应时间
解决办法:关了WORD启动时查毒功能即可。或者花几千元大洋升级电脑。
 
排除机器的速度原因(配置为C4 1.7G+256M)
 
出现错误后,查看系统进程,已经有WORD进程了,
是不是联想电脑的毛病?发生问题的2台电脑好象都是联想!
 
WORD启动时查毒功能在哪里关闭?
 
是不是第一次运行时失败,再试一次却成功,如果是这样,跟我的问题一样,如果你是用瑞星,在瑞星的设置中将OFFICE2000监控项取消.

我当时的系统进程中也有WORD,这说明WORD已经启动了,只是未响应.
 
其实,按你的机器配置,就算是没关闭瑞星也应该没问题,我当初出问题的机器配置:K6-233+128M内存,现在机器升级后一点问题都没,当前机器:C4-1.8+256M

因此,除了测试关闭杀毒软件外,可能还有其他问题
 
重装机器,我也碰过类似的问题。
 
我觉得使用CreateOleObject不是很好。。。
以前我也碰到过明明在系统中安装了word,就是说无法打开(这种情况只局限于word2000,word XP没有问题),要反复好几次才可能打开一次,我在强的机器和弱的机器上都试验过,好像跟系统没有多大关系,后来使用下面的方法解决:注意不是创建ole的方法,而是使用Servers中的WorApplication控件:

try
WordApp.Connect;
except

end;

for I := 0 to 100 do
begin
Sleep(1); //循环一百次休眠,每次一毫秒。。。
Application.ProcessMessages; //出让cpu给其他程序
end;

WordApp.Caption := '操作人员资格证-正面';

我试验过,将休眠次数降低到50可能就不行了,这种方法可以100%启动word成功(这是我的一个项目中的代码,该项目已经交付使用半年了,从来没有反映过启动word不行的问题,运行的系统是p4,128兆,win2000,安装了Norton AntiVirus 2003),唯一的缺点就是慢了一些(其实也慢不了多少啦)。。。。
 
对了,我也不是用OLE的办法,我是将WORD的库导入(我用D5,SERVER中是WORD97,所以要重新导入WORD),然后用WorApplication。我没有加休眠,在近十台机上安装,也从来没出过问题。(唯一一台机出现你的情况,关闭瑞星的OFFICE监测即解决)
 
其实nav2003也是会对office的应用程序进行检测的,大家有没有注意到安装了nav2003的机器在启动word时,word的状态栏上会出现“正在请求病毒扫描”的字样呢。。。

所以,说到底,国产的反病毒软件,大家还是小心为妙。。。反正我是从来不用的。。。
 
真是怪事,有些电脑可以,有些电脑出问题
 
重新安装操作系统吧,在个别机器上我也碰到这问题。
进程里边有,但是就是打不开。
好象是与什么程序冲突了。
 
我碰到的都是联想电脑,可能是他的驱动有问题
 
后退
顶部