【文件属性】:
文件名称:smtp mime格式发送邮件可发附件
文件大小:2.62MB
文件格式:RAR
更新时间:2014-09-09 14:33:17
smtp mime 发邮件 附件
简单的控制台程序 主要是为了学习之用 本人花时间编写。为了和大家分享和学习用,如有什么错误或认为本人哪里处理不当 请和我联系~~
内容:
main.cpp 就一个cpp文件
//1.首先需要连接邮件服务器 这里用socket 邮件服务器端口 25
//2.现在就是和服务器对话了
//3.结束
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#pragma comment(lib,"WS2_32.lib")
using namespace std;
/*加附件的版本*/
//base64编码
string Base64Encode(LPCTSTR lpszSrc);
//base64解码
string Base64Decode(LPCTSTR lpszSrc);
//读文件数据
bool ReadFromFile(const char* pszFilename,string &filename);
unsigned char* m_pbText;
int main()
{
//1.首先需要连接邮件服务器 这里用socket 邮件服务器端口 25
WSADATA Wsa;
//进行WINSOCK的设置
WSAStartup(0x0101,&Wsa);
SOCKET s = socket(AF_INET,SOCK_STREAM,IPPROTO_IP);
SOCKADDR_IN sin;
LPHOSTENT lphost = gethostbyname("smtp.163.com");//这里是用网易的邮件服务器 也可以修改
if(lphost)
sin.sin_addr.s_addr = ((LPIN_ADDR)lphost->h_addr)->s_addr;
else
{
printf("%s\n","获取地址失败");
return 1;
}
sin.sin_family = AF_INET;
//注意邮件服务器的侦听端口 25
sin.sin_port = htons(IPPORT_SMTP);
//连接服务器
if(connect(s,(LPSOCKADDR)&sin,sizeof(sin))==SOCKET_ERROR)
{
printf("%s\n","连接错误");
return 1;
}
printf("%s\n","连接成功");
//接收服务器初次回应
char buff[1024];
memset(buff,0,sizeof(buff));
recv(s,buff,sizeof(buff),0);
printf("服务说:%s\n",buff);
/////上面已经完成连接了/////
string szLine="\r\n";//相当于你按下回车
//2.现在就是和服务器对话了
//问候服务器
string szHelo = "HELO smtp.163.com" + szLine;
printf("我说:%s\n",szHelo.c_str());
send(s,szHelo.c_str(),szHelo.length(),0);
memset(buff,0,sizeof(buff));
recv(s,buff,sizeof(buff),0);
printf("服务说:%s\n",buff);
//请求验证用户密码(需要编码)
string szAL = "auth login" + szLine; //发送验证命令
printf("我说:%s\n",szAL.c_str());
send(s,szAL.c_str(),szAL.length(),0);
memset(buff,0,sizeof(buff));
recv(s,buff,sizeof(buff),0);
// printf("服务说:%s\n",buff); //服务器会回答说 可以输入帐号
//发送帐号
string szUser;
....
具体自己下载运行即可 装个VC6.0 即可
【文件预览】:
mailTest(带附件)
----mailTest.dsw(539B)
----main.cpp(15KB)
----mailTest.opt(48KB)
----mailTest.ncb(41KB)
----Debug()
--------mailTest.exe(544KB)
--------mailTest.pdb(1.09MB)
--------vc60.pdb(132KB)
--------mailTest.bsc(2.02MB)
--------mailTest.pch(6.15MB)
--------vc60.idb(193KB)
--------mailTest.ilk(785KB)
--------main.obj(162KB)
--------main.sbr(0B)
----mailTest.dsp(4KB)
----mailTest.plg(250B)