自动发邮件的程序 c语言,C语言实现发送邮件.md

本文介绍如何使用C语言实现邮件发送功能,通过telnet模拟SMTP协议交互过程,并提供了一个具体的实现案例。

---

title: C语言实现发送邮件

date: 2019-03-31 11:44:14

tags: socket

mathjax: true

---

telent模拟发送邮件,并利用C语言进行实现。

## 邮件协议SMTP

SMTP称为简单Mail传输协议,目标时向用户提供高效、可靠的邮件传输。SMTP的一个重要特点是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力方式传送。工作在两种情况下:一是电子邮件从客户机到服务器;而是从某一个服务器到另一个服务器。SMTP是个请求/响应协议,它监听25号端口,用于接收用户的Mail请求,并与远程Mail服务器建立SMTP连接。

### telnet模拟

首先,需要开启telnet服务,具体百度查询即可。

cmd输入

telnet

首先开启回显

set localecho

连接qq服务器:

open smtp.qq.com //连接qq邮箱服务器,百度可查询到,网易SMTP等

界面输入:

helo qq //打招呼

auth login //登陆请求

邮箱 //发送加密后邮箱地址

邮箱密码 //发送加密的授权码,记住不是邮箱密码

mail from:<1165772354@qq.com> //发送邮箱

rcpt to:<1692957004@qq.com> //接收方有效

data //告诉服务器开始发送数据了

subject:zxpblog //标题

//标题后空一行

www.zxpblog.www //正文内容

. //正文内容后输入一个句号

示例:

![](https://i.imgur.com/yyACfDa.png)

邮箱和密码BASE64加密:[http://old.tool.chinaz.com/Tools/Base64.aspx](http://old.tool.chinaz.com/Tools/Base64.aspx),也可以自己百度BASE64加密找一个在线工具进行加密

邮箱授权码获取自己百度

### C++实现邮件发送

代码:

[https://github.com/zxpgo/socket/tree/master/email](https://github.com/zxpgo/socket/tree/master/email)

一键复制

编辑

Web IDE

原始数据

按行查看

历史

定时自动发送邮件服务使用说明 该软件运行环境需要.Net 3.5支持,Win7系统上可以直接运行. 主要功能可以定时自动发送邮件,发送程序做成服务形式,用户无需登录, 只要电脑是开启状态,就会自动执行发送邮件. 包含的文件, 1.AutoSendMail.exe --设置程序 2.AutoSendMail_Log.txt --存放日志的文本文件.自动生成 3.AutoSendMail_Setting.xml --配置文件 4.AutoSendMailService.exe --服务程序 5.InstallUtil.exe --微软的安装服务必须程序 6.tasks.mdb --Access数据库文件,用于存放邮箱内容. 可更改文件 7.安装服务.bat 8.使用说明.txt 9.卸载服务.bat 安装步骤: 第一步:安装服务 运行“安装服务.bat”文件。(需要管理员权限) 第二步:修改配置文件 修改好配置文件AutoSendMail_Setting.xml。确保Access数据库连接正确,每个任务的发送时点,和邮件信息。 每次修改配置文件必需重新启动服务才生效。 第三步:启动服务 a.从服务管理控制台启动服务,运行services.msc命令打开控制台。 b.通过设置程序启动服务。(需要管理员权限) 如果删除服务,则运行“卸载服务.bat”。 接口定义: 每个任务需要在指定的Access数据库里设置一个视图或表,用于存放邮件信息, 字段格式: 第一字段:ID 自动编号 第二字段:收件人 文本类型 第三字段:抄送人 文本类型 第四字段:主题 文本类型 第五字段:内容 备注类型 第六字段:发送次数 数字类型 备注:程序通过ID查找记录,来更新发送次数的值。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值