(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文

上传人:管****问 文档编号:127658331 上传时间:2020-04-04 格式:DOC 页数:24 大小:1,021.54KB
返回 下载 相关 举报
(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文_第1页
第1页 / 共24页
(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文_第2页
第2页 / 共24页
(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文_第3页
第3页 / 共24页
(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文_第4页
第4页 / 共24页
(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文》由会员分享,可在线阅读,更多相关《(电子行业企业管理)基于POP协议的电子邮件接收程序的设计论文(24页珍藏版)》请在金锄头文库上搜索。

1、学学 号 号 200840420142 课课外设计论文外设计论文 题题 目目 基于 POP3 协议的电子邮件接收程序的设计 教教 学学 院院 计算机学院 专专 业业 网络工程 班班 级级 08 级 1 班 姓姓 名名 李清平 指导教师指导教师 严 伟 课外设计 论文 1 目 录 摘摘 要要 1 1 引 言 3 1 1 课程设计的内容 3 1 2 课程设计的要求 3 2 设计平台简介 3 2 1 VC 3 3 邮件接收协议 5 3 1 POP3 简介 5 4 设计原理 8 4 1 POP3 交互模型 8 5 课程设计步骤 9 5 1 函数构造 9 5 2 接收邮件的步骤 15 6 测试 19 6

2、 1 测试目的 19 6 2 测试环境 19 6 3 测试结果 19 2011 年6月24日 课外设计 论文 2 6 4 结果分析 20 7 出现的问题及解决方法 20 7 1 设计中出现的问题 20 7 2 解决方法 20 参考文献参考文献 21 摘摘 要要 电子邮件可以使人们有效地进行电子化的数据异地交换 Internet 以电子 邮件服务推动着人类的通信行为不断发展 本文以 VC 为开发平台 利用 Socket 套接字编程 实现了基于 POP3 协议的邮件接收程序 介绍了 POP3 协议 的原理及电子邮件接收程序的设计与实现方法 随着Internet Intranet的迅猛发展 电子邮件

3、 E Mail 已成为因特网上 非常流行 非常方便的通信方式 电子邮件技术不断进步 邮件协议也不断发 展 目前应用最广泛的电子邮件收件协议是POP3 本文采用微软最新的 NET技 术 以VC 为开发平台 利用Socket套接字编程开发了基于POP3协议的邮件接 收程序 现对相关原理及具体设计进行讨论 关键词关键词 课程设计 电子邮件 接收程序 POP3 Socket VC 课外设计 论文 3 1 引 引 言言 随着Internet Intranet的迅猛发展 电子邮件 E Mail 已成为因特网上 非常流行 非常方便的通信方式 电子邮件技术不断进步 邮件协议也不断发 展 目前应用最广泛的电子邮

4、件收件协议是POP3 本文采用微软最新的 NET技 术 以VC 为开发平台 利用Socket套接字编程开发了基于POP3协议的邮件接 收程序 现对相关原理及具体设计进行讨论 1 1 课程设计的内容课程设计的内容 运用 VC 语言设计一个邮件程序实现邮件的接收 1 2 课程设计的要求课程设计的要求 1 按要求编写课程设计报告书 能正确阐述设计结果 2 通过课程设计培养学生严谨的科学态度 认真的工作作风和团队协作 精神 3 学会文献检索的基本方法和综合运用文献的能力 4 在老师的指导下 要求每个学生独立完成课程设计的全部内容 2 设计平台简介 设计平台简介 2 1 VC 1 1 背背景景 VC 是

5、微软公司开发的一个 IDE 集成开发环境 换句话说 就是使用 C 的 一个开发平台 VC 是 Windows 平台上的 C 编程环境 学习 VC 要了解很多 Windows 平台的特性并且还要掌握 MFC ATL COM 等的知识 难度比较大 Windows 下编程需要了解 Windows 的消息机制以及回调 callback 函数的原 理 MFC 是 Win32API 的包装类 需要理解文档视图类的结构 窗口类的结构 课外设计 论文 4 消息流向等等 COM 是代码共享的二进制标准 需要掌握其基本原理等等 VC 作为 Visual Studio 的一个组件 可以通过安装 Visual Stu

6、dio 来获 得 VC 作为一个主流的开发平台一直深受编程爱好者的喜爱 但是很多人却对 它的入门感到难于上青天 究其原因主要是大家对他错误的认识造成的 严格 的来说 VC 不是门语言 虽然它和 C 之间有密切的关系 如果形象点比喻的话 可以把 C 看作为一种 工业标准 而 VC 则是某种操作系统平台下的 厂商标 准 而 厂商标准 是在遵循 工业标准 的前提下扩展而来的 2 2 基基本本模模式式 VC 应用程序的开发主要有两种模式 一种是 WIN API 方式 另一种则是 MFC 方式 VC 基于 C C 语言 主要由是 MFC 组成 是与系统联系非常紧密的 编程工具 它兼有高级 和低级语言的双

7、重性 功能强大 灵活 执行效率高 几乎可说 VC 在 Windows 平台无所不能 最大缺点是开发效率不高 3 3 适适用用范范围围 1 1 VC 主要是针对 Windows 系统 适合一些系统级的开发 可以方便实现 一些底层的调用 在 VC 里边嵌入汇编语言很简单 2 VC 主要用在驱动程序开发 3 VC 执行效率高 当对系统性能要求很高的时候 可用 VC 开发 4 VC 主要适用于游戏开发 5 VC 多用于单片机 工业控制等软件开发 如直接对 I O 地址操作 就 要用 C 6 VC 适用开发高效 短小 轻量级的 COM 组件 DLL 比如 WEB 上的控件 7 VC 可以开发优秀的基于通

8、信的程序 8 VC 可以开发高效灵活的文件操作程序 9 VC 可以开发灵活高效的数据库操作程序 10 VC 是编 CAD 软件的唯一选择 包括 AUTOCAD UG 的二次开发 11 VC 在多线程 网络通信 分布应用方面 VC 有不可比拟的优势 课外设计 论文 5 3 邮件接收协议 邮件接收协议 3 1 POP3 简介简介 POP3 Post Office Protocol Version 3 即邮局办公协议 该协议用 于接收邮件的双方 客户机 POP3 服务器 进行通信 使用该协议 用户可 以脱机阅读信件 而不必把客户机长期连接到网络上 以减少网络费用 POP3 协议允许用户以一定的方式从

9、保存邮件的服务器 即 POP3 服务器 上取走自 己的邮件 3 2 POP3 协议工作原理协议工作原理 2 POP3 提供了一种客户机 服务器脱机模型 客户机通过向服务器发送一些 命令来完成相应的操作 客户机能够发送的命令与它所处的状态有关 协议中 定义了三种状态 即确认状态 Authorization State 处理状态 Transaction State 和更新状态 Update State 在不同的状态下 客户 机可以向服务器发送的命令是有区别的 某些命令还会导致状态的转换 POP3 交互过程中的常用命令和状态转换如图 3 2 1 和表 3 2 1 所示 课外设计 论文 6 图 3 2

10、 1 POP3 的状态转换示意图 课外设计 论文 7 表 3 2 1 一些常用的 POP3 命令 POP3 服务器一般使用的是 TCP 的 110 号端口 当客户机与服务器建立 TCP 连接时 POP3 服务器向客户机发回一个问候 交互过程即进入确认状态 此时 若客户机提供了自己的身份并成功确认 即由确认状态转入处理状态 在这个 状态 用户可用相应的命令处理自己的邮件 在完成相应的处理过程后客户机 发出 QUIT 命令 则进入更新状态 在此状态下 POP3 服务器释放邮件资源并 返回一个告别响应 最后关闭 TCP 连接 通过 POP3 命令查询电子邮件时 客户机可以下载指定的邮件 然后对邮件

11、进行删除或修改操作都无需与服务器进一步交互 客户机向服务器发送命令并 等待响应 POP3 命令采用命令行形式 用 ASCII 码表示 服务器响应是由一行 或多行组成 其中 第一行以 ASCII 文本 OK 或 ERR 开始 分别指出相应的 操作是成功还是失败 POP3 命令包含一个大小写无关的关键字和一个或多个参量 所有的命令以 回车换行符 作为其结束标志 关键字和参量必须是非控制符的 ASCII 码字符 关键字和参量之间 参量和参量之间由一个空格字符分隔开 关键字长不大于四个字符 每个参量最长可到 40 个字符 POP3 响应包含一个状态标志和一个跟随其后的附加信息 响应也用 课外设计 论文

12、 8 作为其结束标志 响应最长到 512 字节 其中包括协议定义 了两个状态标志 正确 OK 和错误 ERR 服务器用大写格式 发送 OK 和 ERR 如果响应是多行的 则每行以结束 当响 应的所有行被发送后 接着发送多行响应的结束标志行 该行仅包含一个句点 和一个对 3 4 设计原理 设计原理 4 1 POP3 交互模型交互模型 POP3 发送者发送者 R E A D Y Hello Mail from Rcpt to Data reque st to get O K 接接 收收 数数 据据 Q U I T 断断 开开 连连 接接 该模型基本原理为 POP3 接收者对 POP3 发送者进行初

13、始化连接 发送者 对接收者发送询问指令 READY 接收者则向发送者提交所要接收数据的要求 发送者做出回应 并发送数据 接收者则开始接收数据 发送者发送完数据后 提出断开请求 并断开连接 数据接收过程完成 POP3POP3 接收者接收者 初初 始始 化化 连连 接接 课外设计 论文 9 5 课程设计步骤 课程设计步骤 5 1 函数构造函数构造 Windows Socket类是对Windows Socket API的封装 其中包括 CSocket和 cAsyncSocket类 使用它们能够大大简化网络通信程序的编写 套接字的数据 结构中包括下面五种数据 1 本机主机端口 接收报文或数据报的进程

14、2 本机主机地址 接收数据包的主机 3 远地协议端口 目的进程或程序 4 远地主机端口 目的主机 5 协议 程序在网络上传输数据时使用的协议 本应用程序就是使用 Windows sockets 编程设计的 在接收电子邮件时 必然需要涉及到连接服务器 接收数据 接收响应以及 断开等一系列操作 这就需要设计一个类来封装这些操作 在该应用程序中制 定了一个CSMTP类 该类的定义如下所示 define SMTP PORT 25 define RESPONSE BUFFER SIZE 1024 class CSMTP Public CSMTP LPCTSTR szSMTPServerName UINT

15、 nPort SMTP PORT virtual CSMTP void SetServerProperties LPCTSTR szSMTPserverName UINT nPort SMTP PORT CString GetlastError UINT GetPort BOOL Disconnect BOOL Connect virtual BOOL FormatMAilMessage CMailMessage msg 课外设计 论文 10 BOOL getMessage CMailMessage msg CString GetserverHostName Private BOOL get

16、response UINT response expected CString cook body CMailMessage msg CString m serror BOOL m bconnected UINT m nPort CString m sSMTPServerHostName CSocket m wsSMTPServer protected virtuaI BOOL transmit message CMailMessage msg struct response code UINT nResponse TCHAR sMessage enum eResponse GENERIC SUCCESS O CONNECT SUCCESS DATA SUCCESS QUIT SUCCESS LAST RESPONSE TCHAR response buf static response code response table 其中 m sError成员代表错误信息 m bConnected表示是否建立连接 m bPort表示SMTP服务器所使用的端口号 m sSMTPserverHo

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 经营企划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号