基于C#的邮件收发管理系统的设计与实现(共42页).docx
《基于C#的邮件收发管理系统的设计与实现(共42页).docx》由会员分享,可在线阅读,更多相关《基于C#的邮件收发管理系统的设计与实现(共42页).docx(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上基于C#的邮件收发管理系统的设计与实现学 院: 计算机学院 专 业: 计算机科学与技术 姓 名: 周梓兴 学 号: 7 指导老师: 雷剑刚 职 称: 讲师 中国珠海二一四 年 四 月专心-专注-专业诚信承诺书本人郑重承诺:我所呈交的毕业设计是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。承诺人签名: 日期: 年 月 日基于C#的邮件收发管理系统的设计与实现摘要从1987年我国第一封从北京发送到德国的电子邮件到2013年仅网易邮箱每天得拦截逾4亿封垃圾邮件。电子邮件不仅使我们的工作变得简单同时
2、还方便了生活。最重要的是,电子邮件是整个网间网以至所有其他网络系统中直接面向人与人之间信息交流的系统,它的数据发送方和接收方都是人,所以极大地满足了大量存在的人与人通信的需求。电子邮件,自打诞生以来,它的发展可谓突飞猛进,日新月异,令人刮目相看。本文详细阐述一个在Windows系统下的邮件客户端系统,该系统论述了一个基于C#的邮件客户端系统的设计原理、设计思想及具体的实现过程。其中包括了电子邮件中附件的接收,和发送简单邮件。关键词:电子邮件系统;C#;Visual Studio2010;POP3;SMTPE-Mail manage system based on c#AbstractOn 19
3、87, our country the first E-mail sent to Germany from Beijing, but in 2013 to only netease E-mails to intercept more than 400 million spam emails every day. E-mail is not only making our work but become simple and convenient life. Most importantly, email is the whole network between the network and
4、all other network system directly to interpersonal information communication system, its data sender and receiver are all human, so greatly satisfy the needs of a large amount of existence of human communication.E-mail, since birth, it is flew up in a sudden, the development of rapid and impressive.
5、This article elaborated a mail client system under Windows system, the system this paper discusses a mail client system based on c # design principle, design idea and the concrete implementation process.Including the receiving E-mail attachment, and send a simple email.Keywords: E-Mail Manage System
6、#; Visual Studio2010; POP3; SMTP目录1 前言1.1. 研究背景不管你是喜欢网购,每天关注游戏的最新变化、订单的物流情况的职业屌丝;还是静坐在星巴克里享受续杯咖啡,提起手机就是数十万的交易订单的高富帅。我们都离不开电子邮件。它像是电话留言般,在方便的时候处理机记录下信息然后通过文本、图像、声音等不同的文件格式发送给另一方。商业营销中它不单保证了我们及时灵活的处理好每一次的商务活动,同时节约了顾客服务成本,还增进了客户关系,提高了服务质量,增加了顾客忠诚度。根据网易邮箱发布的2013年报告,使用电子邮箱的用户中有近六成学历为大学本科及以上。而且月收超3000人民币的
7、占55.7%。这就说明高端用户对邮箱需求更大,因为它不仅可以作为高效的工作邮箱,也是联系私人感情的重要沟通工具。1.2. 选题意义虽然此类软件越来越多,相比较竞争更加艰难导致企业间对软件的功能要求愈来愈多诸如附加播放器、远程控制,复杂化的设计里面似乎已经脱离了用户本身的需求,何况用户并非每个都是计算机高手对于这样强大的软件只会变得无所适从,最终用户也不得不望而却步,转身投向更简洁的产品。在我的使用邮箱的6年时间里实际上需要的功能也不多,也就是添加图片和附件,必要时才需要使用签名。而根据周边的调查和咨询反应得知,其实人们使用的垫子邮箱客户端的主要功能都是纯文本邮件的收发,而一些高级的邮件形式相对
8、较少,例如收发媒体视频邮件。对此,利用Windows桌面系统的超高使用率而开发一款能让使用邮箱的人看得懂的软件非常重要。这么一来,那一部分电脑小白们也可以利用电邮客户端与世界各地的朋友,同事,客户进行交流沟通。2 环境配置与需求分析2.2.1. 系统环境操作系统及版本:Microsoft Windows 7 Ultimate Service Pack 1 x64-based PC硬件信息:CPU: i5-2500K, 3.30GHz,3292 Mhz,4 个内核,4 个逻辑处理器。内存:DDR3,1333MHz,4GB1.2.2.1.2.1.1. 开发环境Microsoft Visual St
9、udio 2010专业版,版本10.0.40219.1 SP1RelMicrosoft .NET Framework 版本 4.5.50501 SP1Rel开发语言:C# (C SHARP)2.2. 配置介绍Visual Studio由微软公司部署的开发环境,其重新定义了集成开发环境(IDE)的界面。Visual Studio 2010同时带来了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview-CTP),并且支持开发面向Windows 7的应用程序。Microsoft .NET F
10、ramework是用于Windows的新托管代码编程模型。它强大功能与新技术结合起来,用于构建具有视觉上引人注目的用户体验的应用程序,实现跨技术边界的无缝通信,并且能支持各种业务流程。.NET Framework安全解决方案基于管理代码的概念,以及由通用语言运行时(CLR)加强的安全规则,大部分管理代码需要进行验证以确保类型安全及预先定义好的其它属性的行为的安全。而C#是由Microsoft于千禧年发布的一种编程语言,它是第一个面向组件的编程语言,其源代码会被编译成msil再运行,再到后来的版本,C#提出了纯粹的面向对象概念,以及泛型编程概念。利用Microsoft下的开发平台,使用C#语言无
11、疑为此次项目的进行带来极大的方便。2.3. 需求分析我们平时接触到的电子邮件有两种使用方式。第一种是在网站上使用,也就是一般所说的Web方式,首先登录到WebMail服务器(网页邮件服务器),通过身份验证后才可以查阅收发邮件。如果长时间没有对WebMail服务器进行操作,则被认为登录超时,自动退出系统。用户需要再次登录邮件服务器,才可以进行操作。由于频繁的登录填写帐户和密码,造成了用户对电子邮件的使用产生不便。这时出现一种不需要访问Web页面,只需要您在本地机器上使用电子邮件的相关软件,就可以直接收发、管理电子邮件。客户端电子邮件软件一般都比WebMail服务器(网页邮件服务器)提供更为全面的
12、功能。使用客户端软件收发邮件,登陆时不用下载网站页面内容,速度更快;使用客户端软件收到的和曾经发送过的邮件都保存在自己的电脑中,不用上网就可以对旧邮件进行阅读和管理。同时实现多用户,多邮箱帐户, POP3支持,对邮件管理更加快捷方便。正是由于电子邮件客户端软的种种优点,它已经成为了人们工作和生活上进行交流必不可少的工具。2.3.1. 用户需求分析基于此点,越来越多的人投入到了开发邮件收发系统中去了,以foxmail为例,2005年被传腾讯持逾500万美金收购,从此随之而来的邮箱系统逐渐发展成免费模式,而为了适应变化开发客户端的公司也慢慢推出了免费版本。一些优秀的产品也面向广大群众,如:“Moz
13、illa Thunderbird”、“Mirosoft Office Outlook”、“KMail”等等。从使用上述的软件后可以发现,吸引用户的特别之处在于:1 与系统的融合程度高。在“Mirosoft Office Outlook”中,因为其软件与系统的融合,致使用户们产生一种安全感,觉得可能这样就会更加方便使用其软件的崩溃风险也得以降低。2 增加了新闻订阅功能。这一功能的代表者非“foxmail”莫属,这样做的好处就在于用户等待回信的闲暇中可以关注新闻动态,此外用户还可以自行添加订阅。3 增加聊天功能。在“Mozilla Thunderbird”中,拥有一个相当有趣的功能,那就是可以绑定
14、Google Talk,FaceBook and Twitter 账号与好友进行实时聊天,但是由于国家防火墙的限制,使得这一新颖的功能在国内变得鸡勒。从以上3点可以看出高端用户在需求上对邮件客户端的基本需求还是不变的,但部分企业会根据用户不同的特点而增添有趣的功能,在本项目中由于面向基础用户,所以此次开发会本着简洁,简单的特点而为他们服务。2.3.2. 功能需求分析依据用户需求的分析可得,本次项目中系统功能需求并非十分复杂。其主要功能为两个;邮件接收和邮件发送。其中,邮件接收部分会为用户增加一个邮件列表栏,那样用户就能清楚的看见自己的邮件总数。然后是发送邮件部分,用户既可以在编写邮件时突然中断
15、编写然后保存到草稿箱。2.4. 可行性分析每天办公对邮件的按时接收与发送有着极大的需求,所以,开发出一款能实现接收和附加的文件发送功能的电子邮件客户端非常有必要。在C#中集合了许多与邮件收发相关的类,这样一来就节约了开发的时间成本。开发一款在终端接收发送邮件功能的系统远远比webmail模式方便。因为,web需要顾虑到不同浏览器带来的格式兼容问题,使用客户端可以离线情况下看到之前的邮件而不需额外登陆网站,同时也大大避免了账号密码被盗的可能。3 系统框架3.3.1. 系统模块设计SocketUtil类登陆类主界面接收邮件邮件发送MailInfo类MediaTypeo类MessageEx类Quot
16、edPrintableEncode类ReadMail类图 3.1由上图可知,在程序中主要分成了6个部分:1)登陆类,2)主界面内容,3)接收邮件,4)邮件发送类,5)Socket类,还有一个为类集,用作收取邮件时的解码。3.2. 程序总体流程创建邮件账号查看邮件邮件发送图 3.2在这个流程图中可以看到,用户第一步先要创建登陆邮件系统的账户填写相关信息例如pop3服务器地址、端口,以及smtp服务器地址、端口,然后在在主界面查看邮箱的收件箱点击相关列表,接着需要写邮件的话就点击写邮件功能。3.3. 软件功能框图邮件收发系统账户信息邮件数据主界面显示邮件编写Socket邮件头部邮件正文页面分栏草稿
17、箱存储Pop3Smtp图 3.33.4. 系统技术介绍3.3.1.3.2.3.3.3.4.3.4.1. POP3服务首先解释一下何为POP3服务。POP3全称(Post Office Protocol 3)因为其已经发展为第3版,所以称之为POP3,是TCP/IP协议族中的一名成员,本意是用于支持使用客户端远程管理在服务器上的电子邮件。它定义了如何将个人PC加入Internet的邮件服务器和下载电子邮件。1.2.3.3.1.3.2.3.3.3.4.3.4.1.3.4.1.1. pop工作原理其工作原理可以简单的解释为:电子邮件客户端中启动邮件程序以连接邮件服务器,然后利用命令码下载指定电子邮件
18、,下载完成后用户可以自主选择删除与否。在第3版中邮件服务器可以支持只下载而服务器端并不删除。这样的访问模式同时称之为存储转发服务。当客户机与服务器建立连接后客户机会由认可状态转入处理状态,一系列操作后客户端发出quit命令,退出处理状态进入更新状态,之后重新返回认证状态确认身份后断开与服务器的链接集体原理如下图:图 3.43种状态可以描述为:AUTHORIZATION(授权),TRANSACTION(处理),UPDATE(更新)。3.4.1.1.3.4.1.2. pop工作特性在通信过程中POP3客户会像服务器发送命令并等待响应,即前文提及的命令码,接着服务器会以+OK/-ERR指出其操作状态
19、成功与否。如下图就是POP3的命令码:表 3.1命令服务器返回响应描述NOOP+OK/-ERR处理服务器返回一个肯定的响应QUIT结束USER username+OK/-ERR处理用户名STAT+OK count size/-ERR处理请求服务器发回关于邮箱的统计数据。如邮件总数和总的字节数DELE msg+OK No.x Deleted/-ERR处理服务器将由参数标识的邮件标记为删除,由quit命令执行LIST msg+OK count size/-ERR处理返回邮件数量和每个邮件的大小RETR msg+OK No.x size/-ERR处理返回参数标识的邮件全部文本APOP name/di
20、gest认可digest是MD5消息RSET+OK/-ERR处理服务器将重置所有标记为删除的邮件,用于撤消DELE命令TOP num+OK/-ERR处理服务器将返回由参数标识的邮件前n行内容,n必须是正整数PASS password+OK/ERR处理用户密码UIDL msg+OK/-ERR处理返回邮件的唯一标识符上表中已列出多出POP服务所支持的命令码。另外,在通信过程中我们需要注意到POP3的默认通信端口为:110。3.4.2. SMTP服务SMTP全称(Simple Mail Transfer Protocol) 简单邮件传输协议,由一组用于从源地址到目的地址传送邮件的规则,自主控制新建的
21、中转方式。它同样属于TCP/IP协议族,通过此协议所指定的服务器,就可以把E-Mail寄到收件人的服务器上。3.4.2.3.4.2.1. smtp工作原理smtp的工作并非只有一种情况,其可以分为:1是电子邮件从客户机传输到服务器;2是从某一个服务器传输到另一个服务器。每次通信,客户机都要发送一段基于ASC-II的文本,并以CR和LF符号结束。当然这些都是工作在25端口号。不妨来看下其通信模型:图 3.53.4.2.2. smtp工作特性同样,smtp的工作也是需要向服务器发送命令码。如下表:表 3.2描述命令响应码发送邮件到用户终端和邮箱SAML FROM host向服务器标识用户身份,返回
22、邮件服务器身份HELO domain250/null终止邮件会话QUIT221开始信息写作DATA354 - Please input message (end with . ) - 250 OK/null查询服务器支持什么命令,返回命令中的信息HELP command在主机上初始化一个邮件会话MAIL FROM host250/null无操作,服务器应响应OKNOOP发送邮件到用户终端SEND FROM host重置会话,当前传输被取消RSET标识单个的邮件接收人;常在MAIL命令后面可有多个rcpt to:RCPT TO user250/null接收端和发送端交换角色TURN用于验证指定的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 C# 邮件 收发 管理 系统 设计 实现 42
限制150内