对于你这种要求,象楼上说得那样,如果没有精确的进度控制,那么可以采用avi来做。而如果有进度控制,那么在大数据量的情况下,在win32下,可以这么做,写在你每次循环的前面(我以前安装程序中用的)
if(::PeekMessage(&msg,NULL,0,0,PM_REMOVE)){
::TranslateMessage(&msg);
::DispatchMessage(&msg);
}TObject *Sender = this;
if(msg.message==WM_PAINT)Form1->OnPaint(Sender);
//上面这句,就可以显示进度条等。不错,在C#中,我不知道怎么做?难道也用这些api代码,做一个unsafe的?

解决方案 »

  1.   

    还有,如果是你自己做的一个component,那么你可以在你的代码中,暴露出适当的事件来,让client自己控制显示时间。
      

  2.   

    象“数据库连接”这种根本无法知道进度的只能骗用户,我以前就是这么干的。
    让连接异步进行,让进度条不断向前移动,先每秒移动一格,到80%,之后每10秒移动1格,到90%...
    总之是加速衰减的数列,总会等到完成或timeout的时候。
      

  3.   

    microsoft的 copy fiel都不能很好的实现!!!
    microsoft的 copy fiel都不能很好的实现!!!
    microsoft的 copy fiel都不能很好的实现!!!
      

  4.   

    fdsafdaffdkjasl;dksafjdas
    ================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★  浏览帖子速度极快![建议系统使用ie5.5以上]。 ★  多种帖子实现界面。 
    ★  保存帖子到本地[html格式]★  监视您关注帖子的回复更新。
    ★  可以直接发贴、回复帖子★  采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! 
    ★  支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名  ●  
         可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
    Http://www.ChinaOK.net/csdn/csdn.rar
    Http://www.ChinaOK.net/csdn/csdn.exe    [自解压]
      

  5.   


    对于可跟踪的任务使用动态平均法进行进度条的更新;1.可大约估计一个时间:t0;2.采样传输速度:当前时刻的速度speed;3.计算剩下的任务:W;4.则计算出平均所需时间:w/speed;5.重复2,3,4步骤。而对于不可跟踪的操作,也就是说无法计算或预知剩余工作量的操作,只能使用循环指示,即只指示进行与终止两种状态。
    --------------------------------------------
    CSDN论坛助手很棒,希望以后更好,我坚决拥护!