利用SMTP协议收发邮件

更新时间:2023-12-09 16:12:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

利用SMTP协议收发邮件

摘 要

电子邮件可以达成发信人和收信人之间的信息交互。SMPT 协议用来进行邮件的发送,本文分析了SMTP 协议的目的意义和通信模型, 详细说明了它的命令和应答程序。并通过直接使用SMTP协议命令而在程序中实现电子邮件传送的方法。并在此基础上结合VC++ 6. 0的编程实现了接收和发送电子邮件。

关键字:SMTP协议;收发邮件;编程

1

目 录

摘 要 ....................................................................................................................... 1 第一章 背景知识概述 ............................................................................................. 3

1.1 电子邮件 ..................................................................................................... 3 1.2 电子邮件体系结构和服务功能 ................................................................. 3 第二章 SMTP协议.................................................................................................. 4

2.1 SMTP协议目的及意义 ............................................................................... 4 2.2 SMTP协议工作原理 ................................................................................... 4 2.3 SMTP协议的命令和应答........................................................................... 5 第三章 VC++6.0 中实现收发电子邮件 ................................................................ 6

3.1 发送邮件类SMTPMail .............................................................................. 6

3.1.1 主要函数功能介绍 ........................................................................... 6 3.1.2 邮件发送程序 ................................................................................... 7 3.2 接收邮件 ..................................................................................................... 9

3.2.1 初始化MAPI .................................................................................... 9 3.2.2阅读电子邮件 .................................................................................. 10 3.2.3 读取电子邮件程序 ......................................................................... 10

第四章 结论与心得体会 ....................................................................................... 11

4.1结论 ............................................................................................................ 11 4.2 心得体会 ................................................................................................... 11 参考文献 .......................................................................................................... 11

2

第一章 背景知识概述

1.1 电子邮件

电子邮件(E-mail,又称电子函件、电邮或邮件)是指通过互联网进行书写、发送和接收信件,目的是达成发信人和收信人之间的信息交互。电子邮件,electronic mail,简称E-mail,标志是@,,又称电子信箱、电子邮政,电子邮件指用电子手段传送信件、单据、资料等信息的通信方法,通过网络的电子邮件系统,用户可以用低廉的价格、以快速的方式,与任何一个网络用户联系,这些电子邮件可以是文字、图象、声音等各种方式。

1.2 电子邮件体系结构和服务功能

电子邮件系统主要分为两个子系统: 服务器系统和客户端系统 。服务器系统的主要功能是实现电子邮件在Internet中的传输, 客户端系统的主要功能是 发送电子邮件和接收电子邮件。电子邮件的工作原理遵循客户/ 服务器模式, 电子邮件的发送要涉及到发送方和接受方, 发送方构成客户端, 而接收方则为服务器。当发送方编辑好一份电子邮件。依照收件人的地址将其发送出去; 接收方服务器收到电子邮件后, 先将其存放在电子邮箱中, 并告知收件人有新邮件到来。发送方的主机与接收方的邮件服务器直接相连。

图1-1 SMTP交互命令模型

Figure. 1-1 SMTP command interaction model

3

第二章 SMTP协议

2.1 SMTP协议目的及意义

SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,是一种提供可靠且有效电子邮件传输的协议。SMTP是建立在FTP文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供与来信有关的通知。SMTP目前已是事实上的在Internet传输E-Mail的标准,是一个相对简单的基于文本的协议。要为一个给定的域名决定一个SMTP服务器,需要使用MX(Mail exchange)DNS。

SMTP提供一种可靠的有效的传送机制,它用于传送电子邮件。SMTP服务的意义是在SMTP转发的邮件中包括信封和内容这两种东西。内容是由两部分组成的,一部分是信头,一部分是信体,信头是由一个个的域/值对(一个域,一个值)组成的,如果信体有结构的话,它的结构是以MIME构造的。

2.2 SMTP协议工作原理

SMTP是工作在两种情况下:一是电子邮件从客户机传输到服务器:二是从某一个服务器传输到另一个服务器。SMTP也是个请求/响应协议,命令和响应都是基于ASCⅡ文本,并以CR和LF符结束。响应包括一个表示返回状态的三位数字代码。SMTP在TCP协议25号端口监听连续请求。SMTP连接和发送过程如下: 1)建立TCP 连接。

2)客户端发送HELLO命令以标识发件人自己的身份,然后客户端发送MAIL命令;服务器端正希望以OK作为响应,表明准备接收。

3)客户端发送RCPT命令,以标识该电子邮件的计划接收人;服务器端则表示是否愿意为收件人接收邮件。

4)协商结束,发送邮件,用命令DATA发送。

5)以“.”号表示结束输入内容一起发送出去,结束此次发送,用QUIT命令退出。 SMTP的实现模型如下图所示。

4

图2-1 SMTP的实现模型 Figure 2-1 SMTP implementation model

2.3 SMTP协议的命令和应答

SMTP邮件数据包括三部分:命令、应答和报文数据。SMTP命令用于从客户进程向服务器进程发送服务请求;SMTP应答用于使客户进程知道服务器进程的接收状态,以确保在邮件传输过程中对话同步;SMTP报文数据包含报文的正文内容由任意长度的ASCII字符序列组成,以单行的据点作为结束标志。命令与应答必须是一对一的交互传输过程。SMTP的命令集如下表所示。

表2-1 SMTP的命令集 Table 2-1 SMTP command set

5

本文来源:https://www.bwwdw.com/article/w1c5.html

Top