




已阅读5页,还剩81页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录1 前沿 .11.1 课题背景 .11.2 课程设计目的 .21.3 课程设计基本任务 .22 设计平台简介 .33、设计原理 .43.1 软件总体架构 .43.2 程序功能框架图 .43.3 SMTP 协议研究与分析 .53.4 环境说明 .64.详细设计 .74.1 窗体界面控件设计 .74.2 程序实现 .85、系统的实现与测试 .155.1 发送电子邮件程序主界面(带附件) .155.2 接收界面(带附件) .156、结束语 .17参考文献 .18电子邮件发送程序的设计与实现 第 1 页 共 18 页电子邮件发送程序的设计与实现摘 要 电子邮件(简称 E-mai1)又称电子信箱、电子邮政,它是种用电子手段提供信息交换的通信方式。电子邮件软件的最基本功能就是实现邮件的发送与接收,本课程设计完成电子邮件的发送功能实现。本程序是在了解 RFC 底层协议的 SMTP 协议和 POP 协议基础上,以 VS 2005 为开发平台,使用WebBrowser 控件并使用 C#编程语言从 SMTP 协议规定的底层命令做起一步步的与服务器进行交互操作,最终实现发送邮件功能,其发送功能包括:简单邮件的发送、带附件的邮件的发送、发送次数的设置。文中深入讲解了 SMTP 的原理及电子邮件发送程序的设计与实现方法。关键词 电子邮件;SMTP;VS ;C#编程;邮件发送1 前沿1.1 课题背景随着 Internet 的迅猛发展,电了邮件(EMall)已成为凼特网上非常流行、非常方便的通信方式。电子邮件(简称 E-mai1)又称电子信箱、电子邮政,它是种用电子手段提供信息交换的通信方式。它是全球多种网络上使用最普遍的一项服务。这种非交互式的通信,加速了信息的交流及数据传送,它是个简易、快速的电子邮件发送程序的设计与实现 第 2 页 共 18 页方法。通过连接全世界的 Internet,实现各类信号的传送、接收、存贮等处理,将邮件送到世界的各个角落。到目前为止,可以说电子邮件是 Internet 资源使用最多的一种服务,E-mai1 不只局限于信件的传递,还可用来传递文件、声音及图形、图像等不同类型的信息。电子邮件发送程序的发送方式有两种:第一种是本地计算机与用户所指定的发送邮件服务器连接,然后通过发送邮件服务器将邮件传送到接收邮件的服务器,邮件中包含有信件主题和内容等一系列信息;第二种是本地计算机直接与接收电子邮件的服务器相连接,并将邮件送入收信者的邮箱中,电子邮件接收程序则只需要处理本地计算机与存在电子邮件的服务器相连接,并通过帐号和口令从服务器中获取电子邮件,邮件中包含有信件主题、内容和发送时间等。电子邮件不是一种“终端到终端”的服务,是被称为“存贮转发式”服务。这正是电子信箱系统的核心,利用存贮转发可进行非实时通信,属异步通信方式。即信件发送者可随时随地发送邮件,不要求接收者同时在场,即使对方现在不在,仍可将邮件立刻送到对方的信箱内,且存储在对方的电子邮箱中。接收者可在他认为方便的时候读取信件,不受时空限制。在这里,“发送”邮件意味着将邮件放到收件人的信箱中,而“接收”邮件则意味着从自己的信箱中读取信件,信箱实际上是由文件管理系统支持的个实体。1.2 课程设计目的本课程设计的目的主要是学习在 VS 平台下围绕着电子邮件发送的编程与开发,应用软件工程的开发过程,详细论述了 SMTP 的分析、设计及代码实现,最终实现一个具有能发送简单邮件,发送带附件的邮件的邮件发送器。1.3 课程设计基本任务(1)了解 C#编程环境。(2)了解 SMTP 协议的通信原理。(3)功能模块的实现。包括发送简单邮件的实现、发送带附件的邮件的实现、设置发送次数的实现及各种错误提示的实现。电子邮件发送程序的设计与实现 第 3 页 共 18 页(4)系统的实现与测试。包括编译后的 C#程序和运行测试功能需求的实现。2 设计平台简介C#编程环境简介:20 世纪 80 年代以来,C/C+语言一直是使用最广泛的商业化开发语言。但在带来强大控制能力和高度灵敏性的同时,其代价是相对较长的学习周期和较低下的开发效率,同时对控制能力的滥用也给程序的安全性带来了潜在的威胁。C+语言过度的功能扩张也破坏了面向对象的设计理念。因此,软件行业迫切需要一种全新的现代程序设计语言,他能够在控制能力与生产效率之间达到良好的平衡,特别是将高端应用开发与底层平台访问紧密结合在一起,并与 Web 标准保持同步,C#(读作 C-Sharp)语言就是这一使命的承担着。C#语言是从 C/C+语言发展而来的,他汲取了包括 C+、Java、Delphi 在内的多种语言精华,是一种简单易学、类型安全和完全面向对象的高级程序设计语言。它的设计目标就是在继承 C/C+强大功能的用时,兼有 RAD(快速应用程序开发)语言的高效性。作为.NET 的核心编程语言,c#充分享受了 CLR 所提供的优势,能够与其他应用程序方便的集成和交互。下面是对它几个突出特点的描述:语法简洁:C#取消了指针、也不定义繁琐的伪关键字;它使用有限地指令、修饰符合操作符,语法上几乎不存在任何冗余,整个语言结构十分清晰。与 Web 紧密结合:借助 Web 服务框架,C#使得网络开发和本地开发几乎一样简单。开发人员无需了解网络的细节,可以用统一的方式来处理本地的和远程的 C#对象,而 C#组件能够方便的转为 Web 服务,并被其他平台上的各种编程语言调用。目标软件的安全性:C#符合通用类型系统的类型安全性要求,并用 CLR 所提供的代码访问安全特性,从而能够在程序中方便的配置安全等级和用户权限。此外,垃圾收集机制自动管理对象的生命周期,这是的开发人员无需再负担内存管理的任务,应用程序的可靠性进一步得到提高。电子邮件发送程序的设计与实现 第 3 页 共 18 页灵活性与兼容性:C#中允许使用非托管代码来与其他程序(包括 COM 组件、WIN32API 等)进行集成和交互。它还可以通过委托(delegate)来模拟织针的功能,通过接口来模拟多继承的实现。电子邮件发送程序的设计与实现 第 4 页 共 18 页3 设计原理3.1 软件总体架构软件通过 Form1、Program、Resources、Settings、class1 类来实现电子邮件发送的各种功能,如发送简单邮件、发送带附近的邮件、设置发送次数、发送邮箱的类型用户通过主界面来选择这些功能,软件为用户提供相应的服务。总体架构如图 3.1:图 3.1 软件总架构3.2 程序功能框架图 电子以邮件发送软件向用户提供了各种功能,其中主功能为:简单邮件的发送和带有附件的邮件的发送,附加功能有:设置邮件自动发送的次数。另外,此程序中还有各种错误的提示,如发件人、收件人、主题格式不合法的提示,附件路径是否正确的提示,网络不正常的提示等等。如图 3.3 所示:发送邮件类主要功能选择主界面用户电子邮件发送程序的设计与实现 第 5 页 共 18 页图 3.2 程序功能框架3.3 SMTP 协议研究与分析简单邮件传输协议(SMTP )的目标是可靠高效地传送邮件,它独立于传送子系统而且仅要求一条可以保证传送数据单元顺序的通道。SMTP 的一个重要特点是它能够在传送中接力传送邮件,传送服务提供了进程间通信环境(IPCE) ,此环境可以包括一个网络,几个网络或一个网络的子网。理解到传送系统(或 IPCE)不是一对一的是很重要的。进程可能直接和其它进程通过已知的 IPCE 通信。邮件是一个应用程序或进程间通信。邮件可以通过连接在不同 IPCE 上的进程跨网络进行邮件传送。更特别的是,邮件可以通过不同网络上的主机接力式传送。SMTP 基于以下通信模型:针对用户的邮件请求,发送 SMTP 建立与接收SMTP 之间建立一个双向传送通道。接收 SMTP 可以是最终接收者也可以是中客户端软件电子邮件发送系统附加功能各种错误的提示带有附件的邮件发送简单邮件发送邮件的自动发送次数电子邮件发送程序的设计与实现 第 6 页 共 18 页间传送者。SMTP 命令由发送 SMTP 发出,由接收 SMTP 接收,而应答则反方面传送。一旦传送通道建立,SMTP 发送者发送 MAIL 命令指明邮件发送者。如果SMTP 接收者可以接收邮件则返回 OK 应答。SMTP 发送者再发出 RCPT 命令确认邮件是否接收到。如果 SMTP 接收者接收,则返回 OK 应答;如果不能接收到,则发出拒绝接收应答(但不中止整个邮件操作) ,双方将如此重复多次。当接收者收到全部邮件后会接收到特别的序列,如果接收者成功处理了邮件,则返回 OK 应答。SMTP 提供传送邮件的机制,如果接收方与发送方连接在同一个传送服务下时,邮件可以直接由发送方主机传送到接收方主机;或者,当两者不在同一个传送服务下时,通过中继 SMTP 服务器传送。为了能够对 SMTP 服务器提供中继能力,它必须拥有最终目的主机地址和邮箱名称。SMTP 命令邮件内容应答图 3.3 SMTP 通信模型3.4 环境说明WindowsXP 操作系统;Microsoft Visual Studio 2005用户 文件系统 文件系统发送 SMTP 接收 SMTP电子邮件发送程序的设计与实现 第 7 页 共 18 页4 详细设计4.1 窗体界面控件设计本次窗口设计中,主要用到工具箱资源,工具箱中包含了可重用的控件。窗口是实现应用程序人机交互的重要组成部分,它不但可以实现数据流的输入和输出,而且也可以移动和关闭对话框。使用可视化的方法编程时,可在窗体中拖放控件,绘制出应用程序界面。尤其在设计对话框时,使用工具箱中的可视化控件无疑使开发变得十分方便。要在应用程序中操作对话框资源,首先需要创建它。本实验在 vs 2005 中对程序界面设计的对话框如图 4.1 所示图 4.1 电子邮件发送程序界面其中,6 个文本框的 Name 属性从上到下依次为:From, To, Subject, Attach, Pass, Body。2 个按钮的 Name 属性为 Send,Exit。电子邮件发送程序的设计与实现 第 8 页 共 18 页4.2 程序实现本课程设计中主要是用到了 sendmail 命名空间,此空间的包含的类为Form1、Program、Resources、Settings、class1,其中 class1 类用于检测发件人、收件人和主题是否合法。这 5 个类中最核心的类为 Form1。下面将对Form1 类分四部分进行说明:1)构造电子邮件此部分主要有以下属性和方法From 发件人的地址To 以分号分隔的收件人的地址列表Subject 电子邮件的主题Body 电子邮件的正文BodyFormat 电子邮件的正文内容类型Attachments 电子邮件附件集合在本次课程设计中,From 文本框用于填写发件人的地址、To 文本框用于填写收件人的地址、Subject 文本框用于填写信件主题、Attach 文本框用于手动添加附件、Pass 文本框用于填写邮箱密码、Body 文本框用于写入信件正文,双击各文本框时,文本框的内容自动清除后即可完成文本框内容的输入,程序中初始化一些信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年人教版小学数学四年级上册教学计划及进度表
- 广西卫生职业技术学院《服务端应用基础》2024-2025学年第一学期期末试卷
- 沈阳音乐学院《药典生物药品分析》2024-2025学年第一学期期末试卷
- 厦门演艺职业学院《机械基础渐开线齿廓的范成原理实验》2024-2025学年第一学期期末试卷
- 巢湖学院《金属技艺》2024-2025学年第一学期期末试卷
- 2025年公务员考试题库及答案
- 2025南网公务员试题及答案
- 货运索道施工方案(3篇)
- 2025-2030中国船舶维护服务市场现状监测及未来前景创新性报告
- 装饰门窗合同范本
- (2025年标准)委托他人要账协议书
- 2025-2030中国青少年无人机教育课程体系构建与创新能力培养研究
- 煤矿安全规程新旧版本对照表格版
- 2025山东“才聚齐鲁成就未来”水发集团高校毕业招聘241人笔试参考题库附带答案详解(10套)
- 中学2025年秋季第一学期开学工作方案
- 儿童急救流程
- GB 11122-2025柴油机油
- 私募薪酬管理办法
- 经营废钢管理办法
- 药品经营企业讲课课件
- 广东省深圳市海韵中学2026届中考押题语文预测卷含解析
评论
0/150
提交评论