如题~

解决方案 »

  1.   

    你要首先得到要下载的文件的长度.   如果你用的是   WinInet   的MFC类的话,就用下面的方式得到.   
      a) 要使用FindFile方法   
      b) 但是要注意FindFile只是打开了查找的准备,并没有真正去查找,所以要是真正查找还要使用FindNextFile   
      c) 使用GetLength得到文件长度   
        
      完整过程如下:   
      1. 连接并登录FTP服务器,得到CFtpConnection   *ftpConn   
      2. 设置远程FTP的当前路径   
      3. 得到指定文件csdn.zip的长度   
      a) 要使用FindFile方法   
      b) 但是要注意FindFile只是打开了查找的准备,并没有真正去查找,所以要是真正查找还要使用FindNextFile   
      c) 使用GetLength得到文件长度。   
      4. 用二进制的方式打开远程文件,得到CInternetFile   *InetFile   
      5. 创建一个本地文件(注意要是二进制的文件,要和4对应上)   
      6. 不断地读取远程文件到本地的Buffer中,直到读到的长度为0,也就是代表结束。 进度条要是要求美观的话可以用Cstatic自绘  不要求的话用系统自带的算几个数值的比就可以了。
      

  2.   

    http://www.codeproject.com/KB/IP/PartialFTPDownloader.aspx
    这里有个