也就是邮件程序发送时最开始的那部分。
知道能不能连上就可以但是之前用connect连接看返回值的方法不行,网上看的几个例子也不行
不知道是不是我连的地方有保护,但是用foxmail是可以发信的
因此我想还是自己程序的问题。anyway,大家给我支招吧!~
知道能不能连上就可以但是之前用connect连接看返回值的方法不行,网上看的几个例子也不行
不知道是不是我连的地方有保护,但是用foxmail是可以发信的
因此我想还是自己程序的问题。anyway,大家给我支招吧!~
2.发命令"HELO <host_name>"
3.发命令"AUTH LOGIN",然后服务器会以base64编码(QA004159 "请问base64编码的特性是什么")后的形式提示输入用户名,形式为"334 VXNlcm5hbWU6"
4.以base64编码后的形式输入用户名,如果用户名合法,服务器提示输入口令形式为“334 UGFzc3dvcmQ6”
4.以base64编码后的形式输入口令。如果检验正确,服务器会返回"235 Authentication successful"
问题是smtp服务器可能会有多种身份验证机制,"LOGIN"只是其中一种,这种机制是否通用还不知道;其他机制的身份验证的方法如何进行,还不清楚。虽然有一些进展,但还有很多疑问。
主持人注:上面所使用的方法实际上是263.net所使用的认证方法。这里介绍一种分析SMTP对话的方法。如果你可以使用Outlook Express发信,就可以得到smtp.log文件,分析这个文件就知道它是怎么和SMTP服务器对话的。设置的方法是选择“工具|选项”菜单,在对话框中选择“维护”标签,然后选中“疑难解答”中的“邮件”检查框。这样Outlook就会在发信时生成SMTP.LOG,其位置在Win98的某个目录中,使用文件搜索工具找一下就可以。下面就是一段对话的例子:
Outlook Express 5.00.2615.200
SMTP Log started at 01/16/2001 08:15:48
SMTP: 08:15:57 [rx] 220 smtp.263.net ESMTP
SMTP: 08:15:57 [tx] EHLO LocalHost
SMTP: 08:15:57 [rx] 250-smtp.263.net
SMTP: 08:15:57 [rx] 250-PIPELINING
SMTP: 08:15:57 [rx] 250-SIZE 10240000
SMTP: 08:15:57 [rx] 250-ETRN
SMTP: 08:15:57 [rx] 250-AUTH LOGIN
SMTP: 08:15:57 [rx] 250 8BITMIME
SMTP: 08:15:57 [tx] AUTH LOGIN
SMTP: 08:15:58 [rx] 334 VXNlcm5hbWU6
SMTP: 08:15:58 [tx] YWFhaGho
SMTP: 08:15:58 [rx] 334 UGFzc3dvcmQ6
SMTP: 08:15:58 [tx] 密码略去
SMTP: 08:15:58 [rx] 235 Authentication successful
SMTP: 08:15:58 [tx] MAIL FROM: <[email protected]>
SMTP: 08:15:58 [rx] 250 Ok
SMTP: 08:15:58 [tx] RCPT TO: <[email protected]>
SMTP: 08:15:58 [rx] 250 Ok
SMTP: 08:15:58 [tx] DATA
SMTP: 08:15:59 [rx] 354 End data with <CR><LF>.<CR><LF>
SMTP: 08:15:59 [tx]
.
SMTP: 08:15:59 [rx] 250 Ok: queued as D46711C8FEBCC
SMTP: 08:15:59 [tx] QUIT
SMTP: 08:16:00 [rx] 221 Bye
除了LOGIN,还有CRAM-MD5(RFC 2195)和PLAIN模式。可以使用免费的MFC类CSMTPConnection(http://www.naughter.com/smtp.html),它支持所有3种模式。
都是connect就不行了救我啊~
晚上QQ联系我:88974534
http://www.smartmaildemo.com 有代码下载!