如何检测一个电子邮箱是pop、pop3等类型?(100分)

  • 主题发起人 socool_100
  • 开始时间
S

socool_100

Unregistered / Unconfirmed
GUEST, unregistred user!
收发邮件时,如果想象foxmail那样,不用用户输入服务器的服务类型如何实现?
如:我的邮箱是socool_100@163.com,那用程序就可以得到:收邮件服务器是:
pop3.163.com;发邮件服务器是:smtp.163.com
是如何实现的呢?
 
foxmail可能已经将数据保存在一个列表中了。
 
那不可能吧,那如果是学校等单位服务器它可以把类型保存在数据库,好象不大可能,
是不是它可以做一个连接检测;不过我的socool_100@21cn.com邮箱用foxmail
也是不行的,到它www.21cn.com直接进去就可以。里面的帮助也是说可以用outlook,等的
收是:pop.21cn.com,foxmail也检测出来了,就是不行,不知什么回事,我现在正在做一个
发邮件的,在DFW的帮助下可以收发www.163.net的了,不过其他还有很多种类型的,不知
让用户填还是什么样,但很多用户又是不懂那些pop或pop3之类的(即使是非计算机的大学生),
对于这个问题该如何办好呢?
 

可以试试用indy的IdIcmpClient分别连接pop,pop3服务器,看是否有回应。
如果有,就选定谁,不然默认为pop
 
foxmail的帮助原文:
“  对于一些流行的免费邮箱,如:163、新浪等,Foxmail会自动填写正确的POP3和SMTP
服务器地址。如果服务器地址填写不正确,就不能正常收/发邮件。”
实际上foxmail内置了许多pop3和smtp服务器地址,它会自动根据邮箱地址的“@”符号的后面
部分在地址库中寻找,你只能尽可能多的增加服务器地址到程序的地址库中,但无法是全部,
因此,对一些不是常用的服务器地址只能让用户自行输入。
 
不过Foxmail是Delphi5写的真的很强啊?收发邮件都很好,不知他们用的是哪个控件.
 
不过,我发现还是有很多bug。呵呵...
 
哎,这么久了,该结束了!
 
顶部