文档介绍:本方法主要涉及以下四方面知识: html 语言、 http 协议、 winsock 编程、多线程程序设计。程序实现过程: 1. 分析链接关系(限于篇幅,这里只介绍对锚标记〈 a 〉的分析)。在 html 中〈 a 〉标记的基本语法为:〈 a href= ″...″ name= ″...″ target= ″...″〉。其中参数 hre f 的值就是欲获取的 url 值。 2. 下载。在 http 协议中常用的请求方法有两种: get 和 post 。本实现使用 get 方法。最简化的 get 请求包如下: get / http/ “/ ”表示客户端欲下载的文件路径; “ http/ ”表示协议版本。程序生成 get 请求包,在成功连接对应 web 服务器的 80 或其它端口后,使用基于 tcp 协议的同步模式套接字发送请求包并等待返回信息。服务器将返回一个应答包,大致如下: http/ 200 ok ...[ 数据...] 第一行是应答信息。如果成功,服务器将返回“ http/ 200 ok”。第三行是一个空行,用以分隔 http 包头和包体( 数据)。第四行开始就是以字节流的方式返回的数据。如果使用 http 代理,则与上述有两点不同。第一, 连接时应连接代理服务器,而不是连接 web 服务器。第二,在生成请求包时,下载文件的 url 必须写全 url 。对上例而言,请求应为“ get http://netsport/ http/ ”,而不是“ get / http/ ”。具体程序和类( 程序使用 编制): 1. 初始化 winsock 。 procedure (sender: tobject); var wversionrequired: word; wsdata: twsadata; begin ismultithread:=true; //置″支持多线程″为″真″ wversionrequired:=makeword(2,0); case wsastartup(wversionrequired,wsdata) of // 初始化 winsock wsasysnotready : ( ′网络系统未准备′,′信息′,mb_ok); wsavernotsup