- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
发送邮件制作概要
发送邮件制作过程
在程序内部发送邮件,是本课题要解决的一个问题。
思路:
创建邮件头类
class CMailHeader
{
public:
CMailHeader(){}
~CMailHeader(){}
CString strsender; //邮件发送邮箱:如ohezght@126.com
CString strsendername; ///邮件发送人姓名
CString strrecp; //邮件接收邮箱:如545351077@
CString strsubject; //邮件主题
CString strxmailer; //邮件类型 如:mailx
};
创建发送邮件类
class CMailSender
{
public:
CMailSender();
virtual ~CMailSender();
BOOL CreateTCPSocket(); //创建创建字
BOOL ConnectServer(LPCTSTR lpszAddr,unsigned short nport); //连接服务器
BOOL SendUserAuthLogin(LPCTSTR lpszUser,LPCTSTR lpszPassword);
//用户登录
BOOL CheckResponse(LPCTSTR lpszText); //检查服务器返回值
BOOL SendMailHeader(CMailHeader *pMheader); //发送邮件头
BOOL SendMainData(LPCTSTR lpszData); //发送邮件数据
BOOL SendQuitMail(); //发送邮件程序退出
protected:
BOOL DnsParse(LPCTSTR lpszAddr,CString strIp); //解析域名-ip
SOCKET m_hSocket; //套接字
};
发送邮件类中各方法的实现
在类实现的头文件中包含以下文件。
#include “base64.h”
包含base64.h和base64.c,base64两个文件主要用于加密和解密邮件发送的数据。
#include winsock2.h
#pragma comment(lib,ws2_32.lib)
包含winsock2.h和#pragma comment(lib,”ws2_32.lib”),是用于创建套接字编程。
1、构造函数
WSADATA wsadata; //存放windows socket初始化信息.WSAStartup(MAKEWORD(2,2),wsadata);
m_hSocket=INVALID_SOCKET; //套接字初始化为INVALID_SOCKET
2、析构函数:
if (m_hSocket!=INVALID_SOCKET)
{
closesocket(m_hSocket); //关闭套接字
}
WSACleanup(); //清除windows socket信息
3、创建套接字
BOOL CMailSender::CreateTCPSocket()
{
if ((m_hSocket=socket(AF_INET,SOCK_STREAM,0))==SOCKET_ERROR)
//创建套接字为tcp连接方式,SOCK_STREAM为tcp,SOCK_DRAM为数据报
{
return false;
}
return true;
}
4、连接服务器:
BOOL CMailSender::ConnectServer(LPCTSTR lpszAddr,unsigned short nport)
{
////////////////////////定义变量//////////////////////////
hostent *p=gethostbyname(lpszAddr); //从服务器域名中得到主机信息
if (p==NULL) return false;
CString strIp;
DnsParse(lpszAddr,strIp);//解析服务器域名并得到IP地址
////////////////
您可能关注的文档
- 机械故障诊断学钟秉林第10章旋转机械的状态检测与故障诊断资料.ppt
- 发生器和泵的比较概要.pptx
- 发电机出口开关小修记录概要.docx
- 发挥联想和想象概要.ppt
- 发电机励磁系统原理概要.ppt
- 发电机励磁系统原理ppt概要.ppt
- 发电机安装作业指导书概要.doc
- 发电机工作原理概要.ppt
- 发电机检修作业指导书概要.doc
- 发动机舱日常维护概要.ppt
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)