调用COM组件服务器正在运行中解决方法

来源:互联网 发布:中国石油大学华东网络教育 编辑:程序博客网 时间:2024/06/03 17:30

调用进程外COM组件时,如果等待时间过长,则会出现如下提示对话框:

   服务器正在运行中 由于另一个程序正在运行中,此操作无法完成.请选择“切换到”来激活正在运行中的程序,并更正问题.底下是“切换到”和“重试”两个选项。

可以在程序初始化时添加如下代码,屏蔽该提示对话框:

AfxOleGetMessageFilter()->EnableBusyDialog(FALSE);AfxOleGetMessageFilter()->SetBusyReply(SERVERCALL_RETRYLATER);AfxOleGetMessageFilter()->EnableNotRespondingDialog(TRUE);AfxOleGetMessageFilter()->SetMessagePendingDelay(-1);