c++ 实现STMP出现的问题
想做一个模块实现STMP邮件发送。
RecvCommand(s, recvBuffer, sizeof(recvBuffer));
SendCommand(s, "HELO " + str_stmpServer + "\r\n");
RecvCommand(s, recvBuffer, sizeof(recvBuffer));
SendCommand(s, (string)"auth login\r\n");
RecvCommand(s, recvBuffer, sizeof(recvBuffer));
SendCommand(s, Base64Encode(str_username) + "\r\n");
RecvCommand(s, recvBuffer, sizeof(recvBuffer));
if(string(recvBuffer).substr(0, 3) != "334")
{
return FALSE;
}
SendCommand(s, Base64Encode(str_password) + "\r\n");
RecvCommand(s, recvBuffer, sizeof(recvBuffer));
if(string(recvBuffer).substr(0, 3) != "235")
{
return FALSE;
}
已经连接到邮件服务器,现在进行用户,密码登陆时出现错误。
发送密码时,服务器返回应答500 5.5.1 Invalid command 8c45f42f-9f51-4b85-b531-a00dc49def09
无效的命令,我发送的命令是Base64Encode(str_password) + "\r\n"
str_password是密码,Base64Encode转换函数
求大神解::::
[解决办法]
看看我的几篇博客,看完你就明白了。
http://blog.csdn.net/kuzuozhou/article/details/7339945
http://blog.csdn.net/kuzuozhou/article/details/7339362
http://blog.csdn.net/kuzuozhou/article/details/8256307
给你的第一篇是linux 下用socket实现smtp协议
第二篇是dos 命令行格式手动发邮件
第三篇用java socket实现smtp协议发邮件