delphi XE7+ INDY 10.6测试邮件发送接收功能
记录如下的关键地方,存档
xe7自带的indy 组件是10.6版本,
1. 接收邮件时, 如果邮箱容量超过2GB的话,idpop3的检查检索邮件数量的函数返回值就会出错。
今天2019.12.3在indy 官网看到 indy 10已经更新了组件的 相关类型从integer 改为 int64.
var
i:integer;
begini:=0;self.IdPOP31.Host:='pop.xxxxx';self.IdPOP31.Username:='xxx@xxxxx.com';self.IdPOP31.Password:='xxxxx';tryself.IdPOP31.Connect;
// self.IdPOP31.Login;i:=self.IdPOP31.CheckMessages; //如果邮箱使用容量超过2gb, 会出错,会显示一个很大的整数。
//另外读取的邮件会从老-->新 的时间开始
for i := 1 to 5 do
beginself.IdMessage1.Clear;self.IdPOP31.RetrieveHeader(i,self.IdMessage1);self.Memo1.Lines.Add(self.IdMessage1.From.Address) ;self.Memo1.Lines.Add(datetostr(self.IdMessage1.Date));self.Memo1.Lines.Add(self.IdMessage1.Subject);self.IdPOP31.Retrieve(i, self.IdMessage1);self.Memo1.Lines.Add(self.IdMessage1.Body.Text);
end;except on e:exception doshowmessage(e.Message);end;self.IdPOP31.Disconnect;
2. 测试发邮件功能,我的aliyun邮件服务器不需要验证的
procedure TForm1.btnsendClick(Sender: TObject);
beginself.IdMessage1.Clear;self.IdMessage1.Subject:='hello test';self.IdMessage1.Body.AddStrings(self.Memo1.Lines);self.IdMessage1.From.Address:='supply@XXXX.com';self.IdMessage1.From.Name:='supplier';self.ListBox1.Items.Add(self.IdMessage1.From.Text);with self.IdMessage1.Recipients.Add dobeginAddress:='XXXXXXX@qq.com';Name:='my qq';end;//如果像下面一项分成2行添加的话,意味着添加2个不同的邮件地址// self.IdMessage1.Recipients.Add.Address:='XXXXXXXX@qq.com';//self.IdMessage1.Recipients.Add.Name:='my qq';//self.ListBox1.Items.Add(self.IdMessage1.Recipients.Items[0].Text);//self.ListBox1.Items.Add(self.IdMessage1.Recipients.Items[1].Text);self.IdMessage1.CCList.Add.Address:='XXXXXX@aliyun.com';//self.ListBox1.Items.Add(self.IdMessage1.CCList.Items[0].TEXT);//self.IdMessage1.CCList.Add.Name:='XXXXXX';showmessage(self.IdMessage1.Body.Text);//self.IdSMTP1.Host host, username, password之类已经在窗体内设置好了。self.IdSMTP1.Connect;self.IdSMTP1.Authenticate;self.IdSMTP1.Send(self.IdMessage1);self.IdSMTP1.Disconnect();
end;
10.6的indy,connect之前不需要设置authenticatetype:=atLogin, 只有一个属性authtype (satdefault, satnone....);
delphi XE7+ INDY 10.6测试邮件发送接收功能相关推荐
- java web 邮件_JavaWeb实现邮件发送接收功能
一.邮件开发涉及到的一些基本概念 1.1.邮件服务器和电子邮箱 要在Internet上提供电子邮件功能,必须有专门的电子邮件服务器.例如现在Internet很多提供邮件服务的厂商:sina.sohu. ...
- Rails测试《十一》添加邮件发送程序及测试邮件发送程序
讲到测试邮件发送程序,我们首先要让系统可以发送邮件.我们先来给系统添加发送邮件的功能. Action Mailer in Rails 3是一个不错的视频教程,大家可以参考. 还有就是http://gu ...
- python 数据库查询结果邮件提醒_Python实现的查询mysql数据库并通过邮件发送信息功能...
本文实例讲述了Python实现的查询mysql数据库并通过邮件发送信息功能.分享给大家供大家参考,具体如下: 这里使用Python查询mysql数据库,并通过邮件发送宕机信息. Python代码如下: ...
- mysql自带的邮件发送功能_Python实现的查询mysql数据库并通过邮件发送信息功能...
本文实例讲述了Python实现的查询mysql数据库并通过邮件发送信息功能.分享给大家供大家参考,具体如下: 这里使用Python查询mysql数据库,并通过邮件发送宕机信息. Python代码如下: ...
- Delphi中Indy 10的安装和老版本的卸载
安装中遇到的问题: 1,用新的indy替换掉了老版本source下面的indy 2,按照参考资料编译的.dpk版本要保持跟老版本一致,如本人的就是XXX100.dpk 3,编译和安装路径统一放在了de ...
- C# Email邮件发送,功能是密码找回或者重置功能。
最近根据公司需求,写个邮件发送. 这里面的传入的地址信息的参数都是经过加密的. 主要是保证用户信息的安全. 帮助类 1 using System; 2 using System.Collec ...
- Zabbix 4.4 web前端界面操作流程:创建主机>创建触发器>报警媒介>动作>邮件 发送/接收 预警信息 等详细操作
直接上教程 一.创建主机 配置>主机>创建主机 注意:配置主机前,被监控主机要安装 Zabbix-agent 客户端 1.安装Zabbix 4.4源:rpm -ivh http://rep ...
- java 邮件提醒功能_利用ical4j和javamail发送会议邀请实现邮件发送提醒功能
/*** *@paramsenderAccount 发件人账号 *@paramsenderPassword 发件人密码 *@paramtoAddress 收件人邮箱地址 *@paramccAddres ...
- C#实现邮件发送的功能
Ø 发送邮件所用的核心知识点 微软封装好的MailMessage类:主要处理发送邮件的内容(如:收发人地址.标题.主体.图片等等) 微软封装好的SmtpClient类:主要处理用smtp方式发送此邮 ...
最新文章
- 3650服务器性能,全新联想System x3650 M4服务器性能出色
- Java compiler level does not match解决方法
- oracle可以使用提交完成的事务,【体系结构】Oracle数据提交与事务隔离实验 oradebug挂起lgwr进程...
- bgb邻居关系建立模型_学习开发知识图谱中的长期关系依赖
- 【深度学习】2021年深度学习哪些方向比较新颖,处于上升期或者朝阳阶段,没那么饱和,比较有研究潜力?...
- python和c混合编程 gil_终于搞明白python与gil
- ajax会占用服务器端内存吗,javascript - 为什么不允许在jquery datatable服务器端处理ajax成功使用? - 堆栈内存溢出...
- unity3d-学习笔记19-卡牌游戏制作(战斗胜利界面,点击菜单栏出现其他选项以及对应功能,实现能量卡消耗蓝条)
- foobar2000在线标签服务器,在Foobar2000播放器中从音乐名获取标签的技巧
- 2017年高教社杯全国大学生数学建模竞赛(A题)
- 输入数字转换成英文输出
- if判断和grep命令-w及搜索前后行
- 蓝桥杯:跳蚂蚱【BFS】【Python】
- 【通信原理】学习笔记----理解信道
- 海子-JVM的内存区域划分
- oracle mts rac,oracle12.2RAC之OGG安装配置(二)
- 我国计算机发展里程碑,我国超级计算机新的里程碑
- 主流的四种IM(IM:instant messaging,即时消息)协议
- 关于“姚志浩”现象的一点看法
- c花体复制_可复制花体英文字母(较全)