资源简介
SMTP邮件发送(MFC、VC++)耿网出品.用户可以发送或接收一个或多个带附件的邮件,也可以使用不同的SMTP或POP3服务器。
代码片段和文件信息
// SendMail.cpp: implementation of the CSendMail class.
//
//////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include “VCMail.h“
#include “SendMail.h“
#include
#include
//#include “winsock2.h“
#pragma comment(lib“WSOCK32“)
#include “atlconv.h“
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CSendMail::CSendMail(void)
{
m_pcFileBuff=NULL;
memset(m_cSendBuff0sizeof(m_cSendBuff));
memset(m_cReceiveBuff0sizeof(m_cReceiveBuff));
}
CSendMail::~CSendMail()
{
DeleteAllPath();
}
void CSendMail::Char2base64(char* pBuff64char* pSrcBuffint iLen)
{
static char base64Encode[]=“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/“;
int point;
point = 2;
int i;
int iIndex;
char n=0;
for(i=0;i {
if(point==2)
{
iIndex=((*pSrcBuff)>>point)&0x3f;
}
else if(point==4)
{
iIndex=((*pSrcBuff)>>point)&0xf;
}
else if(point==6)
{
iIndex=((*pSrcBuff)>>point)&0x3;
}
iIndex += n;
*pBuff64++ = base64Encode[iIndex];
n=((*pSrcBuff)<<(6-point));
n=n&0x3f;
point+=2;
if(point==8)
{
iIndex=(*pSrcBuff)&0x3f;
*pBuff64++=base64Encode[iIndex];
n=0;
point=2;
}
pSrcBuff++;
}
if(n!=0)
{
*pBuff64++=base64Encode[n];
}
if(iLen%3==2)
{
*pBuff64=‘=‘;
}
else if(iLen%3==1)
{
*pBuff64++=‘=‘;
*pBuff64=‘=‘;
}
}
void CSendMail::AddFilePath(char* pcFilePath)
{
if(pcFilePath==NULL)
{
return;
}
int i;
char* temp;
for(i=0;i {
temp=m_pcFilePathList.GetAt(m_pcFilePathList.FindIndex(i));
if(strcmp(pcFilePathtemp)==0)
{
return;
}
}
m_pcFilePathList.AddTail(pcFilePath);
delete[] temp;
}
void CSendMail::DeleteFilePath(char* pcFilePath)
{
int i;
char* temp;
for(i=0;i {
temp=m_pcFilePathList.GetAt(m_pcFilePathList.FindIndex(i));
if(strcmp(temppcFilePath)==0)
{
m_pcFilePathList.RemoveAt(m_pcFilePathList.FindIndex(i));
delete[] temp;
return;
}
}
}
void CSendMail::DeleteAllPath(void)
{
m_pcFilePathList.RemoveAll();
}
int CSendMail::GetFileData(char* FilePath)
{
m_pcFileBuff=NULL;
if(FilePath==NULL)
{
return 0;
}
CFile f;
int len;
// USES_CONVERSION; A2W(FilePath)
if(!f.Open(FilePathCFile::modeRead|CFile::modeNoTruncate|CFile::typeBinary))
{
return 0;
}
len=(int)f.GetLength();
m_pcFileBuff=new char[len+1];
memset(m_pcFileBuff0len+1);
f.Read(m_pcFileBufflen);
f.Close();
return len;
}
void CSendMail::GetFileName(char* fileNamechar* filePath)
{
if(filePath==NULL||fileName==NULL)
{
return;
}
int i;
for(i=0;i<(int)strlen(fil
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1449 2012-09-03 16:44 VCMail\SendMail.h
文件 1506 2012-09-03 16:42 VCMail\VCMailDlg.h
文件 54784 2012-09-03 23:33 VCMail\VCMail.opt
文件 4149 2012-09-03 23:32 VCMail\VCMailDlg.cpp
文件 1765 2012-09-03 23:33 VCMail\VCMail.clw
文件 3579 2012-09-03 10:26 VCMail\ReadMe.txt
文件 1324 2012-09-03 10:26 VCMail\VCMail.h
文件 2157 2012-09-03 10:26 VCMail\VCMail.cpp
文件 1005 2012-09-03 16:43 VCMail\Resource.h
文件 35880 2012-09-03 16:43 VCMail\VCMail.aps
文件 6250 2012-09-03 16:43 VCMail\VCMail.rc
文件 208 2012-09-03 10:26 VCMail\StdAfx.cpp
文件 398 2012-09-03 10:26 VCMail\res\VCMail.rc2
文件 1078 2012-09-03 10:26 VCMail\res\VCMail.ico
目录 0 2012-09-03 10:26 VCMail\res
文件 9979 2012-09-03 23:27 VCMail\SendMail.cpp
文件 518 2012-09-03 10:26 VCMail\VCMail.dsw
文件 66560 2012-09-03 23:33 VCMail\VCMail.ncb
文件 2968 2012-09-03 16:43 VCMail\Debug\VCMail.res
文件 222208 2012-09-03 23:32 VCMail\Debug\vc60.idb
文件 7482992 2012-09-03 14:52 VCMail\Debug\VCMail.pch
文件 372736 2012-09-03 23:32 VCMail\Debug\vc60.pdb
文件 1398931 2012-09-03 14:52 VCMail\Debug\StdAfx.sbr
文件 0 2012-09-03 16:44 VCMail\Debug\VCMail.sbr
文件 0 2012-09-03 23:32 VCMail\Debug\VCMailDlg.sbr
文件 0 2012-09-03 23:27 VCMail\Debug\SendMail.sbr
文件 106710 2012-09-03 14:52 VCMail\Debug\StdAfx.obj
文件 3810304 2012-09-03 23:32 VCMail\Debug\VCMail.bsc
文件 127034 2012-09-03 23:32 VCMail\Debug\VCMail.exe
文件 427008 2012-09-03 23:32 VCMail\Debug\VCMail.pdb
............此处省略12个文件信息
- 上一篇:26190C语言在测量与控制中的应用王彤
- 下一篇:虹膜定位方法实现
相关资源
- VC++基于OpenGL模拟的一个3维空间模型
- 基于VC++的SolidWorks二次开发SolidWorks
- 派克变换VC++源码(附文档)
- VC++ 串口
- VC++ 大富翁4_大富翁游戏源码
- VC++ 摄像头视频采集与回放源程序
- 转 VC++ 实现电子邮件(Email)发送
- 基于MFC的VC++仿QQ浏览器源码(雏形)
- VC++ 服务程序编写及安装与卸载
- VC++6.0番茄西红柿VAXvirsual assist X完美破
- 基于改进的fcm算法的图像分割vc++
- VC++6.0 绿色版,免安装,非常好用。
- Microsoft Visual C++ 2005 Redistributable Pack
- VC++MFC课程设计的学生成绩管理系统
- 大智慧365DLL插件设计
- VC++6.0汉化包
- VC++完整商业界面源码(再上传)
- VC++编程技术600个大型项目源码.rar
- VC++实现RSA加密算法
- VC++ 中国象棋经典游戏源代码
- 郁金香VC++游戏辅助视频教程
- C语言进阶源码---基于graphics实现图书
- 摄影测量相对定向VC++程序
- VC++数字图像处理典型算法及实现
- VC++酒店客房管理系统 MFC
- 车站计算机联锁vc++6.0程序代码
- SMTP邮件发送程序
- VC++编程的第一个MFC工程Hello World
- VC++中实现复选下拉框CCheckComboBox
- VC++写的SMTP协议发附件超酷啊直接可以
评论
共有 条评论