在接收邮件时,程序可以根据用户所设置的邮箱进行自动收取邮件,自动收取邮件的时间间隔为3分钟,并且是所有用户添加的邮箱都进行自动收取。也可以用户手动进行收取邮件。根据用户的帐户信息将存放于当前邮箱的邮件服务器上中收件夹下的所有邮件下载到本地并存放于收件箱。如果没有指定附件下载后的存放地址,附件存放于于源程序相同的目录下的debug文件中对应的邮箱文件夹中。双击邮件基本信息栏中的某一个邮件来查看正文及附件的内容,同时用户可双击打开该邮件的附件来提取附件的具体内容,放在自己方便的位置。
为了方便用户添加的多个邮箱进行发送邮件,此程序只设立一个通用的通讯录,这个通讯录需要用户手动添加,添加时可以自己备注邮箱地址,方便用户识别。
对于收件箱和发件箱中的邮件,都可以被删除。收件箱中的邮件被删除的邮件,只是在本地上被删除,邮件服务器上的相应邮件没有被删除,再收取邮件时不再重复收取被删除的邮件。收件箱和发件箱中的邮件可以进行排序和搜索,方便用户查找邮件。
本次毕业设计所要完成的,是一个邮件收发平台,该平台功能类似于foxmail 的简单邮件收发C\S程序,基于smtp和pop3协议,具体包括帐号的管理、发送邮件,自动接受邮件(附件的处理,比如删除等),邮件的管理(比如邮件的查询,排序)等功能。
SMTP,POP3采用Client/Server工作模式,Client被称为客户端,一般我们日常使用电脑都是作为客户端,而Server(服务器)则是网管人员进行管理的。SMTP服务器的主要功能就是接收来自客户端的SMTP协议命令,然后对这些命令进行解析,根据不同的命令进行不同的处理,处理完成之后,将结果发送给客户端。
图3-1 Client/Server工作模式示意图
3.2 系统功能设计
本系统本系统基于SMTP和POP3协议主要实现客户端对电子邮件的发送和收取,根据上面的系统设计目的,主要功能如下:
● 邮件管理(带附件和不带附件的邮件发送和邮件接收)
● 邮箱管理(添加和删除邮箱)
● 信箱管理(发件和收件箱中邮件进行排序和查询,删除和搜索)
● 自动收邮件(自动刷新收件箱里邮件,在3分钟的时间间隔里自动收邮件)
● 通讯录管理(添加删除通讯录)
3.3 系统模块设计
根据系统功能设计,可以将系统分解成几个模块来设计应用程序界面,如图3-3所示。
图3-3 程序功能模块图3.4 数据流程设计 图3-4 数据流程图
图3-4数据流程图,表现了邮件数据在操作中的流程。用户通过smtp协议发送邮件到邮件服务器,程序通过pop3协议从邮件服务器上下载邮件,发送或下载接收的邮件都保存到本地机器上,供用户查看。用户可以添加和删除邮箱和通讯录。
3.5 数据库逻辑结构设计
由以上功能分析可建立三个数据表,如表3-5-1、表3-5-2和表3-5-3所示。
字段名 数据类型 是否可空 说明
id int 否 关键字,用户编号
accountname 文本 可 邮箱名称
password 文本 可 邮箱密码
smtpname 文本 可 Smtp服务器名称
smtpprot int 可 Smtp服务器端口号
pop3name 文本 可 Pop3服务器名称 基于smtp、pop3协议的电子邮件自动收发系统的开发(5):http://www.youerw.com/jisuanji/lunwen_8537.html