在mfc对话框程序中我编写了一个复制文件的操作,只要开始执行,窗口就停止响应了。 等文件复制完后才能恢复(窗口可以移动、放大、缩小)。请问一下有什么方法解决这个问题 

解决方案 »

  1.   

    可用多线程处理,把复制文件夹的操作放到线程里面完成.
    HANDLE handle=::CreateThread(NULL,0,CopyFile,NULL,0,0);
    WaitForSingleObject(handle,INFINITE);
    ....//把窗口可以移动、放大、缩小等操作到这下面.
      

  2.   

    用多线程,
    chenyang80425(孤独剑) 你的方法有误哦,
    HANDLE handle=::CreateThread(NULL,0,CopyFile,NULL,0,0);后调
    WaitForSingleObject(handle,INFINITE);窗口还使会阻塞的。
    只要在
    BOOL DestroyWindow() 

       if (m_handle != NULL)
    {
        WaitForSingleObject(handle,INFINITE);
        CloseHandle(m_handle );
        m_handle = NULL;
    }
        return CDialog::DestroyWindow();
    }