我的源程是这样写的  NMHTTP1.InputFileMode := TRUE;
  NMHTTP1.OutputFileMode := FALSE;
  NMHTTP1.ReportLevel := Status_Basic;  NMHTTP1.Body := ExtractFilePath( Application.ExeName)+'vsnet_120.gif';
  NMHTTP1.Get('http://www.csdn.net/images/ad/vsnet_120.gif');当然这样的速度很慢,且下载不稳定,即不是匀速下载,
一会快,一会慢的,十分之不爽~小文件且可忍受,下载大文件那简直是想死~~~
要像用Ie的点右键另存为的效果就好了,快速,均匀。有什么好意见?up有分

解决方案 »

  1.   

    但Ie确实是匀速的啊~~下载同一个文件,用我的程序下要一两分钟,但IE只要几十秒不到,我想应该是我程序的问题吧。IE欺骗我也罢,但至少让我感觉很好啊,是不是,用户是上帝,
    不能让他不爽吧。网络不会有问题,下载同一个文件,我的程序比其他的东西(比如蚂蚁)
    就是慢。具体表现是时快时慢,还有点死机的现象!
      

  2.   

    换套控件试试?比如Indy什么的。
      

  3.   

    WebBrowser?我不喜欢还是直接用Http好,这样灵活一些。Indy的Http和FastNet的Http有何区别?感觉没有吧~
      

  4.   

    建议你去参考一下ChinaClaw(中国网爪),安装文件只有600多K,功能上不比FlashGet,NetAnts差,可以说是同一水平,各有千秋了!
      

  5.   

    多线程下载本来就很容易实现,因为Window封装WinSock,而Delphi又提供了TClientSocket控件,一切实现起来不就是那么的顺理成章?和一般下载不同,你只需要在连接和接收文件时,在ClientSocket.Socket.SendText的内容中告诉服务使用HTTP/1.1协议,'HEAD /'+FileName+' HTTP/1.1'+#13#10,'GET /'+FileName+' HTTP/1.1'+#13#10,然后告诉开始的下载的位置,'RANGE: bytes='+IntToStr(Pos)+'-'+#13#10,这就实现了断点续传,配合多线程很容易实现多线程下载!实在不明白还可以看看NetAnts的下载信息框中的内容!阅读下HTTP/1.1协议的规范,就知道多线程下载并没那么复杂,因为本来就是踩在巨人的肩膀上去实现多线程下载!
      

  6.   

    用ICS也可以呀,可以对比一下使用,拣一个好的使