VC SMTP客户端程序的设计设计与实现
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
摘要本论文是在实现了SMTP协议的客户端软件MyEMail开发的基础上完成的,涉及到软件的设计、实现以及测试等方面。通过本设计可以掌握SMTP协议,了解到当前邮件服务的一些不足。论文着重对邮件服务所使用的SMTP协议进行了分析,并根据ESMTP协议的规定添加了身份验证的功能增加了邮件服务的安全性。MyEMail软件是根据SMTP协议的原理、协议的模型以及工作过程,而设计出一款完整、实用的基于SMTP协议的客户端软件。该软件的实现过程中对协议的工作模式和流程进行分析。从常规的邮件发送过程出发,采用C++语言在VC++6.0的平台下,借助VC++6.0提供的应用程序框架MFC加以实现。该软件实现了SMTP协议,具有向邮件服务器发送身份验证消息以及邮件的功能,使用户能够在本地通过客户端程序向服务器发送邮件信息。目前,虽然协议规定在正文中可以使用网页信息。但使用该手段发送的邮件正文可能包含有恶意代码,从而出现安全隐患,因此,在本设计中并没有提供相关支持。关键词:SMTP协议;邮件;C++;客户端1引言随着信息技术的发展、互联网的普及,电子邮件已经逐渐称为人们正常工作和生活中进行沟通的重要手段。采用电子邮件服务可以方便快捷的与朋友、同事或合作伙伴进行沟通,传递信息。电子邮件技术具有方便、快捷、成本低廉等特性。能够大大减少信息传递的时间,比传统的信件传递方式更快捷,成本也更低。在实现过程中加入了认证机制,因而,更安全、可靠。目前与邮件相关的协议大概可以分为两种:一种是邮件发送协议――SMTP协议;另一种是邮件接收协议――POP协议。本软件实现的是用于发送邮件的SMTP协议。目前,SMTP协议已经有了大量的实现,应用广泛。本软件是为了研究SMTP协议而作的一个实验型项目。目的在于掌握SMTP的工作原理,并实现一个能够发送邮件的完整邮件客户端。本毕业设计以SMTP协议为理论基础,以面向对象的方式在VC++6.0平台下进行实现。用计算机语言对SMTP协议的工作原理进行了描述。实现了与邮件发送有关的基础类,根据面向对象的特性,迅速的搭建了邮件的客户端。在实现过程中,用到了VC++中的MFC框架,使得软件能够符合有关的WINDOWS程序标准,并且有了清晰的结构规划,给维护带来了方便。2 SMTP协议概述2.1 协议简介SMTP,简单邮件传输协议是Simple Mail Transfer Protocol的缩写。它是互联网上的一种通讯协议,工作于应用层,使用端口为25。主要功能就是传送电子邮件,当我们使用邮件程序,邮寄E-Mail给对方时,必须通过SMTP协议,将邮件发送到对方的邮件服务器上,等待对方查收。SMTP协议的目标是可靠高效地传送邮件,它独立于传送子系统而且仅要求一条可以保证传送数据单元顺序的通道。SMTP的一个重要特点是它能够在传送中接力传送邮件,传送服务提供了进程间通信环境(IPCE),此环境可以包括一个网络,几个网络或一个网络的子网。理解到传送系统(或IPCE)不是一对一的是很重要的。进程可能直接和其它进程通过已知的IPCE通信。邮件是一个应用程序或进程间通信。邮件可以通 过连接在不同IPCE(Interprocess Communication Environment)上的进程跨网络进行邮件传送。更特别的是,邮件可以通过不同网络上的主机接力式传送。3软件开发背景与环境3.1 软件开发背景作为计算机专业的学生,在课堂上学习到的仅仅是有关协议的理论知识,并没有分析并运用协议的实际经验。对于协议的相关知识只能停留在理论阶段。为了加深对SMTP协议的理解,全面掌握SMTP协议,提高动手能力和解决实际问题的能力,而提出了该课题。本软件是为了学习目的而开发出的系统,采用VC++6.0作为开发平台,C++作为开发的语言。使用MFC提供的有关底层API,不依靠提供的组件,手动分析协议的工作流程。对发送和接收的数据进行分析,把文字描述的协议转化为计算机语言,并提供方便用户使用的操作界面。生成一个能够向任何实现了SMTP协议的邮件服务器发送邮件的客户端软件,服务器端可以任意选取(实现SMTP协议即可)。利用该客户端,用户可以方便的发送邮件。4 SMTP协议客户端软件设计与实现4.1 需求分析与总体设计4.1.1功能分析由本设计的题目可知,本设计的目的就是建立一款能够发送邮件的客户端软件。对本软件而言,应该具备如下功能:1)可以保存用户输入数据。2)可以根据用户输入的数据连接服务器,并进行身份验证。3)可以对有关数据进行加密。4)可以发送邮件信息(含附件)。5)图形界面要信息完整、操作舒适、界面雅观。根据以上分析,需要进行编码的操作有:1)从图形界面获取输入的数据的操作。2)根据MFC提供的API连接服务器,建立一条连接发送者和接收者的通道。3)提供BASE64的加密算法,能够对用户输入的数据进行加密。生成满足SMTP协议要求的数据。4)按照SMTP的要求,对邮件进行封装,生成满足协议要求的邮件。5)对邮件发送过程中,发送者与接收者之间的命令与应答码之间的关系进行分析。6)图形界面编程。4.1.2总体设计目前流行的工作平台有很多,可以实现目标的编程语言也有多种。下面与流行的两种平台做比较并说明选择VC++的原因:1、整个工程使用JAVA平台从诞生至今,一路走来JAVA可以说是一帆风顺。已经超越了C++称为最受欢迎的语言之一。如果选择使用JAVA作为开发语言,并使用一种集成IDE,如:JBUILDER。调用下JAVA有关邮件发送的类库,那么整个的邮件发送过程就变成了对少数几个属性的设定问题,整个工程的主要任务就不再是对SMTP协议的分析,而仅仅是对有关界面的设计(而且JAVA的界面设计相对于其他的可视化来说好像有些不足,目前似乎只有NetBeans支持的比较好)。而且使用JAVA的条件是用户必须安装虚拟机,并且JAVA的执行速度在目前来看似乎也不太被看好。因此没有考虑使用JAVA来完成本设计。
包含资料:
[资料来源:http://THINK58.com]
源程序+论文(15000字以上)+可执行程序+答辩稿ppt+开题报告+外文翻译
获取资料请您联系本站客服