实现一个类似FlashGet或者NetAnts的客户端下载软件大致需要以下三类关键技术:
一)FTP和HTTP协议的操作。
二)与浏览器的集成。
三)用户界面的操作。首先,FTP协议和HTTP协议的编程是最核心的技术,其中包括:
1)FTP站点的登陆(USER,PASS)、上载(RETR)、下载(STOR)以及断点续传(REST)
2)FTP站点的连接模式(PASV)以及通过代理访问FTP站点
3)HTTP请求发送(GET)、断点续传(Content-Range)
4)复杂的HTTP协议操作:Persistant Connection、HTTP代理、认证、HTTP 1.0服务器的兼容与浏览器的集成包括:
1)添加工具栏按钮以及右键菜单项(修改注册表等)
2)点击链接自动启用下载软件(BHO:Browser Helper Object)
3)抽取Download页面中所有的Hyperlink(IE Document Object Model)用户界面操作:
1)系统托盘(System Tray)
2)拖放窗口(Drag and Drop)
3)下载进度以及文件块的显示(没有统一的实现技术)编写一个能够实用的客户端下载软件是一项有一定工作量的工作,上面基本上列举了一个客户端下载软件所用到的一些技术及其大致的实现方向,仅供参考。
Hogwarts - S(u)ddenly dis@ppeared...

本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。  
为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。