안녕하십니까?
상철이 님
Microsoft MSDN의
Forum 사이트를 방문해 주셔서 감사합니다.
문의 하신
”Visual Basic사용중인데 작업 중에 "서버 작업 중"
대화상자가 나타납니다.” 에 대한 답변 드리겠습니다.
원인
이 대화상자는 ActiveX
서버가 클라이언트 애플리케이션에게 응답을 하지 못할 때 나타나게 됩니다.
해결방안 제시
다음과 같이CWinApp::InitInstance()의 파생 함수에서
COleMessageFilter::SetMessagePendingDelay() 함수를 이용하여
ActiveX 컨트롤의 응답을 기다리는 시간을 길게 설정하면 됩니다.
BOOL CMyApp::InitInstance() {
// ...
AfxOleInit();
COleMessageFilter * pFilter = AfxOleGetMessageFilter();
pFilter->SetMessagePendingDelay(5000);
// ...
}
여기서
SetMessagePendingDelay()의 인자는 클라이언트 애플리케이션이 ActiveX
서버의 응답을 기다리는 시간으로 밀리세컨드 단위입니다.
참고자료
http://support.microsoft.com/kb/602164/ko
제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.
제시해 드린 답변이 도움이 되었기를 바랍니다.
답변이 문제 해결에 도움이 되었다면 답변으로 채택을 부탁드립니다.
하지만 문제 해결이 되지 않아서 정확한 답변을 원하는 경우에는 문제의 정보를 더 자세하게 답변으로 제공해주시기 바랍니다.