邮件基于POP3的邮件收发系统的设计与实现

pop3  时间:2021-02-20  阅读:()

题 目 基于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年时

木木云35元/月,美国vps服务器优惠,1核1G/500M带宽/1T硬盘/4T流量

木木云怎么样?木木云品牌成立于18年,此为贵州木木云科技有限公司旗下新运营高端的服务器的平台,目前已上线美国中部大盘鸡,母鸡采用E5-267X系列,硬盘全部组成阵列。目前,木木云美国vps进行了优惠促销,1核1G/500M带宽/1T硬盘/4T流量,仅35元/月。点击进入:木木云官方网站地址木木云优惠码:提供了一个您专用的优惠码: yuntue目前我们有如下产品套餐:DV型 1H 1G 500M带宽...

2021年全新Vultr VPS主机开通云服务器和选择机房教程(附IP不通问题)

昨天有分享到"2021年Vultr新用户福利注册账户赠送50美元"文章,居然还有网友曾经没有注册过他家的账户,薅过他们家的羊毛。通过一阵折腾居然能注册到账户,但是对于如何开通云服务器稍微有点不对劲,对于新人来说确实有点疑惑。因为Vultr采用的是预付费充值方式,会在每月的一号扣费,当然我们账户需要存留余额或者我们采用自动扣费支付模式。把笔记中以前的文章推送给网友查看,他居然告诉我界面不同,看的不对...

819云(240元)香港CN2 日本CN2 物理机 E5 16G 1T 20M 3IP

819云是我们的老熟人了,服务器一直都是稳定为主,老板人也很好,这次给大家带来了新活动,十分给力 香港CN2 日本CN2 物理机 E5 16G 1T 20M 3IP 240元0官方网站:https://www.819yun.com/ 特惠专员Q:442379204套餐介绍套餐CPU内存硬盘带宽IP价格香港CN2 (特价)E5 随机分配16G1T 机械20M3IP240元/月日本CN2 (...

pop3为你推荐
文件夹删不掉文件夹是文件夹删不掉怎么办?google竞价排名谷歌SEO与谷歌竞价的区别和联系万网核心代理在万网代理商购买万网产品,谁知道价格?知道的说下?网站运营网站运营的工作做什么创维云电视功能什么是创维云电视啊?创维云电视是什么意思?分词技术中文分词的应用分词技术怎么在SEO中学会运用关键词分词技术gbk编码表gbk内码表怎么看blogcn怎样设置BLOGCN的访问密码服务器连接异常手机WIFI检查显示主服务器连接异常,怎么办
softlayer kddi 紫田 sub-process 回程路由 日本空间 个人免费空间 asp免费空间申请 广州服务器 paypal注册教程 流媒体加速 新睿云 网页提速 web应用服务器 新加坡空间 工信部网站备案查询 域名转入 云销售系统 七十九刀 godaddyssl 更多