SMTP协议收发邮件
第三章 VC++6.0 中实现收发电子邮件
3.1 发送邮件类SMTPMail
3.1.1 主要函数功能介绍
1)重载的构造函数 SmtpMail()
此函数主要用于在初始化过程中,把用户选择的附件的路径以参数的形式传给
FilePath。
2)添加附件的函数 AddAttachment
传给FilePath的路径,通过这样一个函数就可以循环的动态的添加到IList接口的一个
对象中了,方便以后在具体的实现的过程中的使用。
3)得到上传的附件的文件流 GetStream
由于在网络中的操作都是以网络流的形式来实现的,因此先将上传的附件转换成文件
流,然后再用Write的方法把这些附件的文件流写入到网络中,来完成发送附件的操作。
4)将字符串编码为Base64字符串的函数 Base64Encode
由于ESMTP的LOGIN认证机制是采用Base64编码,当用户发出AUTHLOGIN的命
令后,服务器返回334的应答码等待用户输入。如果身份确认后服务器返回235的应答码,
否则返回失败信息。此函数的作用是把给定的字符串转换成相应的Base64编码的字符串。
5) 发送SMTP命令的函数 SendCommand
这个函数的作用是把SMTP命令的字符串转换成对应的字节型值然后写入网络中,如
果操作成功就返回一个标志为真的布尔型变量,如果操作失败或者发生异常就返回标志为
假的布尔型变量。
6) 接受服务器应答的函数 RecvResponse
它的作用就是从网络流中读取服务器返回的字节型的信息,将其转换成字符串型的变
量,然后将其返回,可以通过其返回值来判断操作是否成功。
7) 重载的函数 Dialog
它们的作用是与服务器交互,发送命令并接收回应。它的实现主要是通过调用上面的
发送SMTP命令函数SendCommand以及接受SMTP服务器响应的函数RecvResponse来实现。
8) 邮件发送程序 SendMail