调用进程外COM组件时,如果等待时间过长,则会出现如下提示对话框:
服务器正在运行中 由于另一个程序正在运行中,此操作无法完成.请选择“切换到”来激活正在运行中的程序,并更正问题.底下是“切换到”和“重试”两个选项。
可以在程序初始化时添加如下代码,屏蔽该提示对话框:
AfxOleGetMessageFilter()->EnableBusyDialog(FALSE);
AfxOleGetMessageFilter()->SetBusyReply(SERVERCALL_RETRYLATER);
AfxOleGetMessageFilter()->EnableNotRespondingDialog(TRUE);
AfxOleGetMessageFilter()->SetMessagePendingDelay(-1);