Dear all, I found the solution and I like to share it with you. I took the idea from an article I have found on your site, http://www.codeproject.com/cpp/cppforumfaq.asp#ui\_workerthread I implemented this code within the button handler and... wonder!, it works. OnButtonClicked() { m_crtlButton->Enable(FALSE); while (Do_A_Bit_Of_Work()) { MSG msk; while(PeekMessage(&msg, NULL, NULL, PM_NOREMOVE) { AfxGetApp()->PumpMessage(); } } m_crtlButton->Enable(TRUE); return; } Ciao and thanks for your kind help. Daniele