北 华 航 天 工 业 学 院
《C#网络编程》
课程设计报告
课程设计题目: 简单邮件收发系统
作者所在系部: 计算机科学与工程系
作者所在专业: 计算机网络技术
作者所在班级: 07521
作 者 姓 名 : 刘佰红
作 者 学 号 : 20
指导教师姓名: 刘海燕
完 成 时 间 : 2009-6-22
1
北华航天工业学院教务处制
目 录
目录…………………………………………………………………..2
摘要…………………………………………………………………..3
课题名称……………………………………………………………3
课题背景……………………………………………………………3
研究手段(途径)…………………………………………………..3
关键词……………………………………………………………...3
功能实现……………………………………………………..4
概述……………………………………………………………….4
主要成员变量说明………………………………………………….4
主要成员函数说明………………………………………………….4
软件运行时的界面以及代码的实现………………………………..…4
系统测试…………………………………………………………….12
结论…………………………………………………………………….12
参考文献………………………………………………………………12
课设评语……………………………………………………………..13
2
摘要
课题名称
简单的邮件收发系统
课题背景
随着计算机网络的发展,人与人之间信息传输的时间大为缩短。许多文件都是以电子
邮件的形式来传送;通常使用过计算机的人,或多或少都会用到 Email 来传输信息当前流
行的各大邮件客户端软件的除了最主要的收发信件之外,功能越来越复杂,但是人们平常
真正用到的功能很少,很多功能尤其对于那些计算机知识相对缺乏的人来说,更加显得太过
于华丽而不太实用。有鉴于此,在了解协议的基础上,我们开发了这个各种功能相对简单
实用的邮件客户端程序,简化了很多不必要的功能。电子邮件的通信是在信箱之间进行的
用户首先开启自己的信箱,然后通过键入命令的方式将需要发送的邮件发到对方的信箱中
邮件在信箱之间进行传递和交换,也可以与另—个邮件系统进行传递和交换。收方在取信
时,使用特定帐号从信箱提取。
研究手段(途径):
一.功能概述
实现发送邮件,接收邮件这两个最基本但是也最重要的功能,以及其他的发送附件,删除
邮件,更新服务器,用界面美化包是界面更加美观。
二.编程环境选择
语言选择:Visual Stdio 2003 中的 C#(C Sharp)
操作系统选择: WindowsXP 系统
邮件服务器:WINmail
关键词
Pop3 服务器,SMTP 服务器,客户端,接受信件,发送信件,添加附件,删除
From 发送方地址 To 接收方地址
Date 信息创建日期 Subject 信息主题
Reply-To 回复地址
3
功能实现
概述
对于发送邮件来说,在.NET 中的具体的实现是:
利用 System.Web.Mail 这个名称空间.在这个名字空间下,有一个专门使用 SMTP 协议来
发送邮件的类:SmtpMail,它已能满足最普通的发送邮件的需求。这个类只有一个自己的
公共函数--Send()和一个公共属性—SmtpServer,您必须通过 SmtpServer 属性来指定
发送邮件的服务器的名称(或 IP 地址),然后再调用 Send()函数来发送邮件。Send 函数
还可以简单的直接以邮件的 4 个主要信息(from,to,subject,messageText)作为字
符串参数来调用。
主要成员变量说明
1) 网络连接类及实例 TcpClient tc
为 TCP 网络服务提供客户端连接类 TcpClient 实例对象 tc。TcpClient 类提供了一些简
单的方法,用于在同步阻塞模式下通过网络来连接、发送和接收流数据。而实例化的过程
也是连接 SMTP 服务器的过程。
2)提供用于网络访问的基础数据流及其实例 NetworkStream ns
此类提供访问网络的基础数据流的方法。其中最基本也是最重要的两个方法就是
Write()和 Read()方法,至于参数不再次赘述。
3)一维字符串数组变量 FilePath
此字符串数组主要用来存放用户选择的附件的绝对路径名,并在发送带附件的邮件时
用到。
4)发送邮件所需的基本参数
用户名、密码,发送邮件需要的收信人,发信人地址以及主题等等在此不再赘述。
主要成员函数说明
1)获取邮件头 GetMailTop(int i)
此函数主要用于在获取邮件时显示邮件头的信息
2)添加附件的函数 AddAttachment
4