实验三 SMTP 邮件发送程序
一、实验目的
电子邮件 E-Mail 是 Internet 中广泛使用的服务之一,在 Internet 电子邮件系 统中,邮件服务器之间通信采用 SMTP 协议。 理解 SMTP 协议的工作原理 掌握 SMTP 邮件发送程序的编程方法 掌握邮件消息的格式
二、实验内容
利用 WinSock 编程接口编写 SMTP 邮件发送程序,在用户界面中给出必要 的邮件信息:收件人、标题、内容等,通过 SMTP 协议将邮件发送给指定的接 收人。通过给自己的邮箱发送邮件的方式,可以登录自己的邮箱,验证发送程序 运行是否正确。
三、实验环境
程序运行环境为以太网, 采用 TCP/IP 协议栈, 网络操作系统为 Windows 8, 具有 Internet 连接能力。程序开发环境为 vs2012。
四、程序设计与实现
步骤 1 需求分析 SMTP 发送程序功能为: (1) 具有编写简单文本邮件的界面,包括:收件人、发件人、发送日期、邮件 标题和邮件文本内容。 (2) 具有将界面内容封装成 RFC822 邮件消息格式的能力。RFC822(Request For Comment)邮件消息由信封、首部、正文三部分组成。 (3) 将邮件消息通过 SMTP 协议发送给目地邮箱。 (4) 登录目的邮箱,检测发送结果是否正确。 步骤 2 SMTP 发送程序开发 用 Visual C++编写 SMTP 发送程序,利用 WinSock 编程接口实现 SMTP 通 信。 发送程序首先显示用户界面使用户可以编辑邮件。 点击发送按钮后,向目标服务器的 TCP 25 号端口建立
TCP 连接,采用 WinSock 编程方式实现。 然后发送 SMTP 命令, DATA 命令后发送邮件消息。 在 SMTP 常用命令如下:
命令 HELO/EHLO MAIL FROM RCPT TO 描述 向服务器标识用户身份 开始一个邮递处理,指出邮件发送者 指出邮件接收者