Go homepage(回首页) Upload pictures (上传图片) Write articles (发文字帖)
The author:(作者)qqpublished in(发表于) 2014/7/11 9:28:02 C#教程:电子邮件的接收使用实例
C#教程:电子邮件的接收使用实例|方法
电子邮件的接收实现电子邮件的接收功能时,首先需要配置POP3服务,步骤如下所示。(1)首先在“Windosw组件向导”对话框中选中“电子邮件服务”前的复选框,依次单击【下一步】按钮,完成“电子邮件服务”的添加操作。“Windosw组件向导”对话框如图1所示。(2)当添加完“电子邮件服务”后,打开“管理工具”,这时将会出现一项新的功能“POP3服务”,如图2所示。(3)双击打开“POP3”服务,添加一个新域(如“126.com”),单击【确定】按钮,如图3所示。图1 “Windosw组件向导”对话框图2 “管理工具”窗体图3 “POP3服务”窗体(4)当添加完“域”后,选中相应的域,并在指定域内添加邮箱名和密码,然后单击【确定】按钮即可。“添加邮箱”对话框如图4所示。图4 “添加邮箱”对话框注意:所有域都在本机上分出一定的空间来存放信息,默认位置为“C:Inetpub mailrootMailbox”。本示例通过一个基于POP3协议的邮件接收程序来向读者介绍如何使用POP3协议实现电子邮件的接收。使用POP3协议实现电子邮件接收功能时,首先需要将客户端与服务器进行连接,注意,在客户端连接到服务器之前,应把端口设为POP3协议默认的110号。客户端连接服务器成功后,服务器会显示如图20所示信息。字符+OK是POP3协议的返回信息,它的回应信息只有+OK或者-ERR两个。其中,+OK表示连接成功,而-ERR则表示连接失败。接下来,客户端输入“USER <用户名>”命令,该命令告诉服务器用户的用户名,这里需要注意,有些服务器是区分大小写的。服务器返回+OK后,客户端再输入PASS <口令>,如果用户名与密码都正确,则服务器再次返回+OK同时还返回一些邮箱的统计信息,例如:+OK 4 2071,不同的服务器返回的信息格式不太一样,所以可以用STAT命令来查看邮箱的情况。STAT命令的回应中有两个数字,分别表示邮件的数量和大小。如果信箱里有信,就可以用RETR命令来获取邮件的正文。RETR命令的格式为:RETR <邮件编号>。如果返回结果的第一行是+OK信息,则表示成功,第二行起便是邮件的正文,最后一行和SMTP协议一样,是一个单独的英文句号,表示邮件的结尾部分。实例运行结果如图5和图6所示。服务器端实现的具体步骤如下所示。(1)在VS2005项目中添加一个窗体。(2)在窗体中添加4个TextBox文本框,分别用于获POP3服务器IP地址、登录邮箱名、邮箱密码、读取第几封邮件。(3)在窗体中添加两个Button按钮和4个Label标签,分别用于激发事件和显示信息。(4)在窗体中添加一个richTextBox控件,用于显示邮件内容。(5)程序主要代码。图5 连接服务器图6 读取信息首先添加必要的命名空间,代码如下:using System.Net.Mail;using System.IO;using System.Net;单击【登录】按钮,程序根据用户名和密码进行登录,如果登录成功,则向服务器发送STAT命令与LIST命令,从而获得邮箱中邮件的数量和大小,最终完成连接。【登录】按钮的Click事件代码如下:private void button2_Click(object sender, EventArgs e){server = new TcpClient(this.textBox1.Text, 110);
赞