Indy收取Hotmail、GMail等邮件的问题(300)

  • 主题发起人 主题发起人 xxhadsg
  • 开始时间 开始时间
X

xxhadsg

Unregistered / Unconfirmed
GUEST, unregistred user!
Indy收取需要SSL加密认证的邮件,经常接收失败,报告10060 connected time out错误,有时却能成功。而我使用foxmail就正常,哪位大侠指点一下?
 
在Foxmail的文件夹里找到libeay32.dll及ssleay32.dll后和你的程序放到一起,你的程序界面上增加一个TIdSSLIOHandlerSocketOpenSSL组件,如IdSSL1,指定TIdSMTP组件的IOHandler属性为IdSSL1,UseTLS为utUseExplicitTLS,然后再试试。
 
谢谢szhcracker,这些我都试了,关键问题是有时能接收成功,有时却提示超时,而foxmail很少收取失败,不知道在什么地方可以调整这个超时错误,我试过connectedtimeout属性设置,还有TIdSSLIOHandlerSocketOpenSSL的readtimeout属性设置,都不管用。
 
我觉得你要把问题分析清楚:首先是连接,是否可以连接上或者基本可以连接上?如果可以,说明连接是没有多大问题的,那么问题就有可能是你接收邮件时的问题导致的超时,检查一下端口、防火墙等,或者接收部分的代码可否优化一下。
 
最简单的代码,连接hotmail邮箱也时常出现连接超时错误:POP.Host := 'pop3.live.com'; POP.Port := 995; POP.Username := 'xxxxx@hotmail.com'; POP.Password := '******'; try POP.Connect; showmessage('success'); except showmessage('Error'); end;已拷贝动态连接库,已加上IdSMTP1.IOHandler = IdSSLIOHandlerSocketOpenSSL1有时success,有时Error,而foxmail同时间测试几乎都可以连接成功。有时连接成功,在收取时也会报告超时,有时就能接收。在什么地方可以调整这个timeout参数?或者是别的什么原因?
 
后退
顶部