题 目 基于POP3的邮件收发系统的设计与实现学生姓名 陈新鹏 学号 1213014008所在学院 物理与电信工程学院专业班级 电子1201班指导教师 李菊叶完成地点 物电学院计算机信息处理实验室
2016年6月5日
陕西理工学院毕业设计
毕业论文设计任务书
院(系) 物电学院 专业班级 电子信息工程 学生姓名 陈新鹏
一、毕业论文设计题目 基于POP3的邮件收发系统的设计与实现
业二论、文毕业论设计文进设行计地点工:作自__2016__年_3_月物1电0日学起院至计_算20机16信__息年6处月理三分、室毕
四、毕业论文设计的内容要求
POP3 Post office Protocol 3是适用于C/S结构的脱机模型电子邮件协议 它规定怎样将个人计算机连接到Internet的邮件服务器下和下载电子邮件的协议。
本设计要求学生在Visual c++环境下 使用POP3技术开发一个邮件接收系统接收邮件服务器上的邮件之后 把邮件下载并保存到本地计算机上 要求可以提取邮箱里的邮件数量和标题字
五、毕业论文设计应收集资料及参考文献
[1]徐孝凯张纪勇.C++面向对象程序设计 VC++6.0运行环境[M].天津大学出版社2009.
[2]汪晓平,钟军.VC++网络通信协议分析与应用实现[M].北京:人民邮电出版社,2003.
[3]王艳平,张越.Windows网络与通信程序设计[M].北京:人民邮电出版社,2006.
[4]Andrew S.T anenbau.计算机网络(第四版)[M].北京:清华大学出版社,2004.
[5]谢希仁.计算机网络(第五版)[M].北京:电子工业出版社,2012.
[6]朱桂英.张元亮Vis ual C++网络编程开发与实践[M] .清华大学出版社.2013.
六、毕业论文设计的进度安排
3月2日——3月29日查阅资料 完成初步设计方案和开题报告。
4月1日——4月26日 根据POP3邮件收发系统的工作原理 给出设计方案 及软件流程图。 4月29日——5月24并在软件环境下进行运行调试进一步完善系统功能整理资料
6月10日——6月15日打印论文准备并完成答辩。指导教师签名 系(教研室)主任签名专业负责人签名 批准日期
陕西理工学院毕业设计
基于POP3的邮件收发系统的设计与实现
陈新鹏
陕西理工学院物理与电信工程学院电子信息工程专业 2012级1班 陕西汉中723000
指导教师:李菊叶
[摘要]电子邮件是互联网基础服务中重要的一部分。从互联网在上世纪90年代开始逐步发展之时到今天信息极大丰富的互联网20时代实现电子邮件POP3收取都有重要的意义。本设计使用Visual Studio2010作为开发平台使用Windows Socket2应用程序接口实现了一个具有POP3邮件接收和保存功能的计算机邮件接收程序 同时介绍了POP3邮件接收协议、 base64解码方法和基于Windows下VisualC++的程序设计以及实现的方法。
[关键字]电子邮件;P OP 3协议;Winsock2;VisualC++
陕西理工学院毕业设计
ChenXinpeng
Grade12,Class01,Majore lec tronicsandinformationengineeringSchoolofPhysic sandTelecommunic ationEng ineer ing,ShaanxiUniversityofTechnology,H a nz h o ng723000,Shaanxi
Tuto r:L iJ uye
Abstract:E-mail isanimp ortantp artofbasicInternet s ervice Fromthebeginn in gofthep rogres sivedeve lop ment oftheInternetinthe 1990s,tothegreatwealthofinformat ionintheInt ernet20erat oday,achievein gthee-mailPOP3 charge alway s isanimp ortantsignifi canc e Thisdesignuses Visual Studio2010asthedevelop mentp latform,usingtheWindows Socket2app licationp rogramint erface,achiev edaco mp ut ermailrec eivin gp rogr amwhichh avin gaP OP 3mai lrec eivin gandstoringfunctionwiththePOP 3 mailrece ivin gp rot ocolwhichbas edonWindowsunder VisualC++p rogrammin gandmethods ofimp lementation
Key wo rd s:E-mail;POP3protocol;Winsock2;VisualC++
陕西理工学院毕业设计
目录
1 . 引言∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙1
1.1 背景∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙1
1.2 研究目的∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙1
1.3 开发环境及语言∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙1
1.3.1 开发环境∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙1
1.3.2 开发语言∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙2
1.4WinSock2简介
∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙32.POP3协议与传输标准
∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙5
2. 1POP3状态简述∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙5
2.1.1 认证(Authorization)状态∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙5
2.1.2 事务(Transaction)状态∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙∙ ∙6
2.1.3 更新(Updata)状态∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙7
2.2Base64 标 准
∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙82.2.1BASE64编
码∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙82.2.2BA SE64解码
∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙9
2.3 中文字符编码标准∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙9
2.3.1GB2312 字 符 集
∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙92.3.2GBK 字 符 集
∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙∙92.3.3UNICODE编码
3.∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙9系统流程和规划
∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙10
3.1 主程序总体设计∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙10
3.2POP3执行流程
∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙113.3BASE64解码流程
∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙13
3.3.1 主题与发件人解码∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙13i
陕西理工学院毕业设计
3.3.2 邮件正文解码∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙14
3.4 邮件保存流程∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙15
4.POP3邮箱的C++实现
∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙174.1TCP发送接收的实现
∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙17
4.1.1 发送函数的C++封装∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙17
4.1.2 接收函数的C++封装∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙17
4.2POP3协议命令的实现∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙18
4.2.1 认证状态C++实现∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙18
4.2.2 事务状态C++实现∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙18
4.2.3 更新状态C++实现∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙18
4.3Base64 的 C++ 解 码 实 现
∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙194.3.1BASE64 块解 码
∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙194.3.2BASE64文本解码
∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙ ∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙194.3.3BASE64解码邮件主题
5.∙ ∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙ ∙∙ ∙ ∙ ∙∙ ∙20 软 件 测 试
∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙21
结束语∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙23
致谢∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙24
参考文献∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙25
附录A∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙26
附录B∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙44
i i
陕西理工学院毕业设计
1 .引言
电子邮件e lec tronicmail简称E-mail是指用电子方式传送的信件。其中也可能包括多媒体信息包括图片、音乐、视频等等。 电子邮件是基础互联网服务之一从古老的阿帕网开始算起尽管目前互联网发展已经有将近50年 电子邮件诞生也超过45年但是电子邮件始终是最为广泛应用的也是最为可靠的信息传送方式之一。 电子邮件不仅可以用来发送接收普通文本信件消息现代的电子邮件多数都是基于html超文本标记语言的通过在支持这一协议的客户端或者网页端打开邮件用户能感受到和最简单的文本邮件完全不一样的体验。它甚至可以让用户免费得到大量的多媒体信息通过邮件订阅 用户也可能得到免费新闻和专题报道等等内容。 电子邮件由于其优越的特性在上世纪上网仍然需要拨号的时代就开始广为流行并在国内获得了“伊妹儿”这一昵称。 网民对其喜爱程度可见一斑。 电子邮件的蓬勃发展和其C/S结构是分不开的 邮件服务只要求服务器长时间在网客户端完全可以脱离网络 只在接收发送邮件的短时间内才连接网络这种特性大大降低了早期互联网发送邮件的费用。任何服务器和客户端之间的连接都需要通过协议支持才能完成而POP3协议"PostOfficeProtocol-Version3 邮局协议版本3就是支撑这种特性实现的基础。通过这一技术 用户可以只在很短的时间内联网 就可以下载大量邮件并且离线阅读节省了互联网初期用户的费用开支的同时 也极大的丰富了人民的网络信息生活。
1.1背景
电子邮件曾经是网络上最主要的通信方式 从1971年诞生开始 电子邮件就开始改变了人们的信息交流方式。 1987年9月份 CANET在北京计算机应用技术研究所内正式建成了中国第一个国际互联网电子邮件节点 并在9月14日发出了中国第一封电子邮件。这一事件标志着中国人使用互联网的历史拉开了序幕 可见电子邮件系统在互联网时代的重要性绝非其他互联网服务可以相提并论的。
到了21世纪在即时通信和社交网络的冲击下 关于电子邮件是否仍然有必要存在的争论开始进入人们的视线 但是电子邮件作为商务交流和网络账号注册中不可或缺的一部分 电子邮件现在仍然在全球范围内拥有众多用户。计算机网络并无国界 和即时通讯充满竞争并且协议不公开的现状不同 电子邮件协议统一并且可以轻松发往国外 这也使电子邮件更为适合国际化环境下的应用。
自从谷歌提供免费GB级别的谷歌邮箱开始 多数互联网邮件提供商都开始了免费化服务 邮件存储空间扩大删除邮件也变得不再是必须的。而用户发送电子邮件成本几乎为0 低成本的邮件发送服务也使得垃圾邮件一度十分猖獗。近年来 电子邮件技术日趋成熟 已经开始了从以提供和保证邮箱基础服务为主的POP3/SMTP协议向以提供安全邮件信息服务为特征的SSL/IMAP协议过渡。作为全世界使用最广泛的通信方式之一 电子邮件的开放性极大地方便了各地网民的信息交流及资源的共享。
1.2研究目的
虽然现在绝大多数邮件服务商都有网页版本的邮件服务端但是对于网络收到资费限制的地方或者处理能力有限的嵌入式设备 POP3协议相比网页端都是更加适合这些应用环境的。 同时 众多软件内部都包含邮件接收系统 比如有些软件的bug反馈就是通过客户端内置的SMTP服务向服务器发送bug反馈邮件 在服务端查看邮件的时候就可能需要使用到pop3协议。因此清楚POP 3协议并且使用C++语言实现协议执行功能仍然是十分有必要的。
1.3开发环境及语言
本文中P OP 3邮箱使用VisualStud io2010开发环境使用C++语言编写程序代码。
1.3.1开发环境
VisualStudio可以用来创建W in d o w s平台下的W in d o w s应用程序。 VisualStudio2010相比V C++6.0具有新外观和新功能功能也更加强健。 V C++6.0发布于1998年 当时主流系统还是Window s 95/98尽管后来发布了SP6补丁包但是对新的操作系统支持仍然很不够。 1998年时
全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技郴州市湘南科技有限公司官方网址:www.xiangnankeji.cn产品内容:全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技VPS价格表:独立服...
棉花云官网棉花云隶属于江西乐网科技有限公司,前身是2014年就运营的2014IDC,专注海外线路已有7年有余,是国内较早从事海外专线的互联网基础服务提供商。公司专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前公司研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务(SaaS),拥有丰富的国内BGP、双线高防...
蓝速数据金秋上云季2G58/年怎么样?蓝速数据物理机拼团0元购劲爆?蓝速数据服务器秒杀爆产品好不好?蓝速数据是广州五联科技信息有限公司旗下品牌云计算平台、采用国内首选Zkeys公有云建设多种开通方式、具有IDC、ISP从业资格证IDC运营商新老用户值得信赖的商家。我司主要从事内地的枣庄、宿迁、深圳、绍兴、成都(市、县)。待开放地区:北京、广州、十堰、西安、镇江(市、县)。等地区数据中心业务,均KV...