UINT Thread( void * ) { for( ;; ) { Sleep( 50 ); } AfxEndThread( 0 ); return 0; } ///////////////////////////////////////////////////////////////////////////// // CThreadTest2App initialization BOOL CThreadTest2App::InitInstance() { AfxEnableControlContainer(); // Standard initialization // If you are not using these features and wish to reduce the size // of your final executable, you should remove from the following // the specific initialization routines you do not need. #ifdef _AFXDLL Enable3dControls(); // Call this when using MFC in a shared DLL #else Enable3dControlsStatic(); // Call this when linking to MFC statically #endif AfxBeginThread( Thread, 0 ); CThreadTest2Dlg dlg; m_pMainWnd = &dlg; int nResponse = dlg.DoModal(); //Sleep( 50 ); // Works when I add this ????? if (nResponse == IDOK) { } else if (nResponse == IDCANCEL) { } // Since the dialog has been closed, return FALSE so that we exit the // application, rather than start the application's message pump. return FALSE; }