⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 downhttp.txt

📁 visual c++ 实例编程
💻 TXT
字号:
HTTP下载类 
包括文件:
httpdownload.cpp
httpdownload.h
sockspacket.cpp
sockspacket.h
te_socket.cpp
te_socket.h

//////////////////////////////////////////////////////////////////////
在使用的程序中,不能有afxsock.h,因为默认调用winsock.h,而此类使用winsock2.h。
//////////////////////////////////////////////////////////////////////


【代码名称】 : 基于Winsock2的支持断点续传和SOCKS代理的HTTP下载类 CHttpDownload 

【用途】 : 基于HTTP协议的下载类,支持断点续传和HTPPGET、SOCKS4、SOCKS4A、SOCKS5代理协议, 支持HTTP BASIC验证和PROXY验证,同时提供SOCKS函数库和基于WINSOCK2重叠IO和事件 对象的Winsock2函数库。 

【作者邮件地址】: telan@263.net telan2000@263.net softelf@263.net 

【主页地址】 : www.softelf.com (目前为空) 

【代码设计思想】: 
1、采用了基于Winsock2中的重叠IO和事件对象模型; 
2、基于RFC2616、RFC2617的HTTP/1.1协议设计; 
3、基于RFC1928、RFC1929的SOCKS5代理协议; 

【部分关键代码说明】: 

TE_Socket.h,TE_Socket.cpp :基于重叠IO和事件对象的winsock2函数库 

SocksPacket.h,SocksPacket.cpp:SOCKS4、SOCKS5协议处理函数 HttpDownload.h,HtppDownload.cpp:支持断点续传的HTTP下载类实现 

【使用说明】 : 


1、在头文件中包含下述头文件: 

#include "TE_Socket.h" 
#include "HttpDownload.h" 

2、在程序合适的地方调用Winsock初始化函数:调用TE_InitLibrary() (结束时调用 TE_CleanupLibrary()) 

3、使用CHttpDownload类 

(1)先初始化,设置必要的属性,哪些要设就看实际情况了 

CHttpDownload down;
 
down.SetRetry(....);   // 设置重试处理机制
down.SetAuthorization(...);     // 下载需要验证的HTTP页面
down.SetTimeout(...);    // 设置超时属性
down.SetProxy(.....);           // 设置代理类型和代理服务器参数
down.SetNotifyWnd(...);         // 设置消息处理窗口,用来接收下载过程当中的消息

(2)开始下载:down.Download(待下载的URL,本地保存的全路径); 

【注】要显示下载进度条或其他下载过程当中的信息,需要用下载进度条所在的对话框的窗口句柄调用 SetNotifyWnd(....)函数,通常的情形是在对话框的OnInitDialog()函数中设置属性,另外创建一个线 程来调用down.Download(...)函数。 


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -