监督POP3信箱[VC/C++编程]
本文“监督POP3信箱[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本文将向大家介绍怎样编写自己的信箱监督程序,程序将直接调用WinSock函数来举行网络通信.除了具有WinSock编程知识之外,还必须理解POP3协议.下面是对POP3的一个大概的介绍,读者可以参看RFC1225更为具体地理解该协议.
1、关于POP3协议
POP3服务器程序普通在TCP端口110供应服务.当客户想要利用服务时,它便与服务器成立一个TCP衔接.一旦衔接成立,POP3服务器就向客户发送一条欢送消息.然后客户开始给服务器发送号令,服务器则给出呼应的答复.POP3的号令由一个关键词大概关键词加参数构成.每个号令以回车换行(0xD0xA)作为完毕标志.关于全部的号令,POP3服务器城市供应一个答复.服务器的答复由一个状况标志加一些附加信息构成.目前利用的两个标志是“+OK”和“-ERR”,辨别表示客户的号令能否合理.全部的答复也是以回车换行完毕.
与本文谈论的话题相关的四个POP3号令是USER、PASS、LIST和QUIT.
USER号令
格局USERname
此中name是用户在该POP3服务器上的用户标识.客户应当在接到服务器的欢送消息后大概在上一个USER大概PASS失利之后可以发送此号令.
PASS号令
格局PASSstring
此中string为该用户的密码.客户在发送了USER号令并且收到了+OK的答复之后方可发送此号令.假如用户名和密码都精确,服务器答复+OK,不然-ERR.
LIST号令
格局LIST
假如该用户有邮件,则LIST号令会答复+OK,并列出全部邮件的标识符和大小(每个邮件一行),最后一个仅包含一个句点的行(0xD0xA0x2E)表示整个答复的完毕.假如该用户没有邮件,有些服务器会返回-ERR,有些在大概返回一个+OK和一个仅包含一个句点的行.当然,客户必须在PASS号令通过之后客户程序才能给服务器发送LIST号令.
QUIT号令
从POP3服务器上退出登录.
2、实现相关函数
接下来我们按照POP3协议所定义的通信法则来实现一个名叫POP3CheckMail的函数,只要调用此函数,我们便可以检测信箱了.
下面的代码是用与Delphi4兼容的Pascal语言实现的,我们必须包含WinSock单元,并且在调用下列函数之前初始化好WinSock动态衔接库.初始化WinSock动态衔接库的代码以下:
ifWSAStartup($002,wsadata)<>0thenHalt;
POP3CheckMail的原型以下:
functionPOP3CheckMail(Email,Password:String;varMailList:TStringList;varErrorMsg:String):Bool;
参数阐明:
Email和Password辨别为用户的email信箱名和口令.
变量参数MailList用于返回邮件的标识和大小,MailList.Count表示邮件的封数.
变量参数ErrorMsg返回出错消息.
以上是“监督POP3信箱[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
- ·上一篇文章:<b>c/c++预处理指令总结</b>
- ·下一篇文章:若何转换全角字符到半角字符
- ·中查找“监督POP3信箱”更多相关内容
- ·中查找“监督POP3信箱”更多相关内容