关于C语言实现SMTP,该如何解决
关于C语言实现SMTP
我之前验证过程已经无误,只是在发送数据时不能成功,对于QQSMTP 服务器返回354 END data whith <cr><lf>.<cr><lf>
而这一段的代码是
是不是在DATA结束后还要发个特定的字符以表示主体结束啊?求助。。。
------解决方案--------------------
我原来写了一个SMTP的实现例子:你可以去参考,见我的博客
http://blog.****.net/kuzuozhou/article/details/7339945
我之前验证过程已经无误,只是在发送数据时不能成功,对于QQSMTP 服务器返回354 END data whith <cr><lf>.<cr><lf>
而这一段的代码是
- C/C++ code
char buf_5[100]="DATA\r\n"; send(hSocket,buf_5,strlen(buf_5),0); //接受data之后的消息 memset(szRcvBuffer,0,1024); recv(hSocket,szRcvBuffer,1024,0); cout<<"发送DATA之后的消息"<<szRcvBuffer<<endl; //发送数据消息确定主题 char buf_6[1024]="subject :Test Mail\r\n"; send(hSocket,buf_6,strlen(buf_6),0); //显示发件人 char buf_8[102]="FROM:674026565@qq.com\r\n"; send(hSocket,buf_8,strlen(buf_8),0); //显示收件人 char buf_9[100]="TO:2507731779@qq.com\r\n"; send(hSocket,buf_9,strlen(buf_9),0); char buf_10[10]=" \r\n"; send(hSocket,buf_10,strlen(buf_10),0); //发送quit消息 char buf_11[10]= " hehe.\r\n."; int a=send(hSocket,buf_11,strlen(buf_11),0); char buf_7[20]="QUIT\r\n"; int b=send(hSocket,buf_7,strlen(buf_7),0); //接受QUIT之后消息 memset(szRcvBuffer,0,1024); recv(hSocket,szRcvBuffer,1024,0); cout<<"QUIT之后的消息"<<szRcvBuffer<<endl; closesocket(hSocket);
是不是在DATA结束后还要发个特定的字符以表示主体结束啊?求助。。。
------解决方案--------------------
我原来写了一个SMTP的实现例子:你可以去参考,见我的博客
http://blog.****.net/kuzuozhou/article/details/7339945