1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > c语言socket smtp 邮件 附件 C++实现含附件的邮件发送功能

c语言socket smtp 邮件 附件 C++实现含附件的邮件发送功能

时间:2023-08-03 18:05:59

相关推荐

c语言socket smtp 邮件 附件 C++实现含附件的邮件发送功能

C++实现邮件发送程序在vs测试通过,一共3个文件,发邮件的程序封装为Csmtp 类。

1.测试用的主函数

//

#include "Csmtp.h"

#pragma comment(lib, "Kernel32.lib")

int main()

{

Csmtp mail(

25,

"",

"username@",// 来源邮箱

"pwd",

"username@" //目标邮箱

);

if (!mail.CReateSocket())

{

cout << "ReateSocket failed!" << endl;

return -1;//

}

mail.setTitle("test mail");

mail.setContent("this is content.");

mail.addfile("test1.png"); //添加附件

mail.addfile("test2.png"); //添加附件

mail.SendMail(); //类主函数

return 0;

}

2.Csmtp类定义

#include

#include

#include

#include

#include //适用平台 Windows

#pragma comment(lib, "ws2_32.lib") /*链接ws2_32.lib动态链接库*/

// POP3服务器(端口:110) Csmtp服务器(端口:25)

using namespace std;

class Csmtp

{

int port;

string domain;

string user;

string pass;

string target;

string title; //邮件标题

string content; //邮件内容

HOSTENT* pHostent;

SOCKET sockClient; //客户端的套接字

vector filename; //存储附件名的向量

public:

Csmtp(

int _port, //端口25

string _domain, //域名

string _user, //发送者的邮箱

string _pass, //密码

string _target) //目标邮箱

:port(_port),domain(_domain),user(_user),pass(_pass), target(_target){};//内容

bool CReateSocket();

void setTitle(string tem){title = tem;}

void setContent(string tem){content = tem;}

int SendAttachment(SOCKET &sockClient);

int SendMail();

void addfile(string str){filename.push_back(str);}

};

3. Csmtp 类的实现

#include "Csmtp.h"

//#include //异常类

static const

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。