怎样用indy10收gmail的邮件?

深宇 2007-01-06 10:57:13
用indy9可以收取成功,但用indy10怎么也收取不了!极度郁闷!
因为项目的很多地方都使用了indy10来开发了,已经换不回去了,请问有谁用indy10收取过gmail吗?
...全文
856 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
laobangcai 2008-03-15
  • 打赏
  • 举报
回复
深宇,怎么用indy10 收邮件的啊,贴出来让俺么瞻仰一下吧
深宇 2007-01-26
  • 打赏
  • 举报
回复
问题解决了,十分感谢各位的帮助!
王集鹄 2007-01-22
  • 打赏
  • 举报
回复
你到网上搜一下TIdSSLIOHandlerSocketOpenSSL的使用方法-_-!!!
深宇 2007-01-22
  • 打赏
  • 举报
回复
是可以连接的,但连接后不久,这个连接就会自动关闭!
不知道有谁用indy10可以成功收取过?
王集鹄 2007-01-21
  • 打赏
  • 举报
回复
uses IdPOP3, IdIOHandler, IdSSLOpenSSl, IdComponent;

你还得参考6楼贴的代码调试
王集鹄 2007-01-21
  • 打赏
  • 举报
回复
//参考如下代码
//TIdConnectionInterceptOpenSSL->TIdSSLIOHandlerSocketOpenSSL
//我用TurboDelphi调试可以连接,但连接后会有堵塞-_-!!!

FIdPOP3 := TIdPOP3.Create(Self);
FIdSSLIOHandlerSocketOpenSSL := TIdSSLIOHandlerSocketOpenSSL.Create(Self);
FIdSSLIOHandlerSocketOpenSSL.SSLOptions.Method := sslvSSLv2;
FIdSSLIOHandlerSocketOpenSSL.SSLOptions.Mode := sslmUnassigned;
FIdSSLIOHandlerSocketOpenSSL.SSLOptions.VerifyMode := [];
FIdSSLIOHandlerSocketOpenSSL.SSLOptions.VerifyDepth := 0;
FIdSSLIOHandlerSocketOpenSSL.RecvBufferSize := 1024;
FIdPOP3.IOHandler := FIdSSLIOHandlerSocketOpenSSL;
深宇 2007-01-15
  • 打赏
  • 举报
回复
这个网址都是介绍如何使用服务器控件
  • 打赏
  • 举报
回复
那你看这里:
http://www.indyproject.org/Sockets/SSL.en.aspx
应该有所帮助。
深宇 2007-01-12
  • 打赏
  • 举报
回复
我也想直接问他,但是我的英语实在太菜了!
  • 打赏
  • 举报
回复
Indy的作者Chad Z. Hower经常泡在borland.public.delphi.non-technical组,你直接去问他吧。
深宇 2007-01-09
  • 打赏
  • 举报
回复
呵呵,好建议!
不过我的英语实在太菜了!
老骨头王 2007-01-09
  • 打赏
  • 举报
回复
帮顶
我也想知道啊
zuoansuifeng 2007-01-08
  • 打赏
  • 举报
回复
ssleay32.dll
libeay32.dll
要最新的才可以~~~要在www.openssl.org 上面下载到最近的才能连接
不然会出现 调用DLL出错~~
zuoansuifeng 2007-01-08
  • 打赏
  • 举报
回复
借用伴水大师的帖子回复一下好了~~ 先注明不是我写的

只是大家技术分享需求才贴出来的 伴水你可莫怪我倾权啊 学习需要 嘻嘻

=====================================================================

GMAIL的端口和连接方式比较特殊:
SMTP端口为:456
POP3端口为:995
都采用安全连接(SSL)
这些通过Indy组件就可以实现
参考代码如下:

object IdConnectionInterceptOpenSSL1: TIdConnectionInterceptOpenSSL
SSLOptions.Method = sslvSSLv2
SSLOptions.Mode = sslmUnassigned
SSLOptions.VerifyMode = []
SSLOptions.VerifyDepth = 0
Left = 56
Top = 11
end
object IdPOP31: TIdPOP3
Intercept = IdConnectionInterceptOpenSSL1
InterceptEnabled = True
RecvBufferSize = 1024
OnConnected = IdPOP31Connected
Left = 26
Top = 11
end

procedure TForm1.Button1Click(Sender: TObject);
begin
if IdPOP31.Connected then
IdPOP31.Disconnect;
IdPOP31.Host := 'pop.gmail.com';
IdPOP31.Port := 995;
IdPOP31.UserID := 'youname@gmail.com';
IdPOP31.Password := '*********';
IdPOP31.Connect;
end;

procedure TForm1.IdPOP31Connected(Sender: TObject);
begin
ShowMessage('连接成功');
end;

举一反三,我想SMTP就没有必要也贴上,搂主自己完善

特别注意:
// 转贴注明作者Zswang wjhu111#21cn.com 2006-12-22
SSL需要如下两个动态连接库
ssleay32.dll
libeay32.dll
Foxmail目录里就有,复制到程序的当前目录即可
否则就叫牛魔王一起来看错误对话框

tobat 2007-01-08
  • 打赏
  • 举报
回复
弱弱的问一句:直接给indy开发组发邮件询问是否OK?
深宇 2007-01-08
  • 打赏
  • 举报
回复
我下载了最新的INDY10,版本号是10.1.6的,还是收取不了:(
难道INDY10真的没法收取GMail的邮件?
有高手解决过这个问题吗?
深宇 2007-01-08
  • 打赏
  • 举报
回复
这个代码好像是针对indy8的,因为indy9也没有这个TIdConnectionInterceptOpenSSL类
hongqi162 2007-01-08
  • 打赏
  • 举报
回复
顶一下
zuoansuifeng 2007-01-08
  • 打赏
  • 举报
回复
原贴地址 http://community.csdn.net/Expert/topic/5241/5241051.xml?temp=.5768854
估计应该不是INDY10吧

深宇 2007-01-08
  • 打赏
  • 举报
回复
InterceptEnabled = True
POP3控件好像没有这个属性哦?

另外,我翻遍整个INDY10,包括搜索全部INDY10的源码,并没有发现TIdConnectionInterceptOpenSSL这个类。
请问,这段源码是indy的哪个版本的呢?
加载更多回复(4)

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧