在www.csdn.net/dev/visual c++ 下有这样的原代码

解决方案 »

  1.   

    1. GetSafeHWND()
    2. 没有想法 :(
      

  2.   

    CWnd::m_hWnd  
    ResThe handle of the Windows window attached to this CWnd. The m_hWnd data member is a public variable of type HWND.建议不要用计时器
      

  3.   

    要实现这种效果,一般有2种,我称作"假的"和"真的"假的就是指,进度条的移动并不是和任务对应的,也就是说进度条跑完了任务不一定完了。
    真的就是…………(同上面相反)1.  CDialog dlg;
        dlg.GetMainWnd();2.  用线程。
        或在任务循环里调用  
         while(::GetMessage(&message,NULL,0,0)){
    ::TranslateMessage(&message);
    ::DispatchMessage(&message);
    }
      

  4.   

    1、用该对话框的m_hWnd就可以得到该对话框句柄。
    2、为何用Timer?你可以设置进度条的范围,如SetRange(0,100);然后用SetPos(m_nProgress)设置其位置即可。在你的长任务中,根据一定比例不断给m_nProgress赋值,可以实现你的任务。
    我已经测试过了。