資源簡(jiǎn)介
VC 郵件發(fā)送客戶端源碼實(shí)例,作者寫這個(gè)程序是獻(xiàn)給自己的寶貝,程序很好用,設(shè)置好各個(gè)參數(shù),就可以發(fā)送郵件,程序界面如截圖所示,源代碼基于VC6.0,可順利編譯運(yùn)行。
代碼片段和文件信息
//?mail.cpp?:?implementation?file
//?Download?by?http://www.codesc.net
#include?“stdafx.h“
#include?“mail.h“
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#undef?THIS_FILE
static?char?THIS_FILE[]?=?__FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
//?mail
mail::mail()
{
servername?=?““;
mailto?=?““;
mailfrom?=?““;
username?=?““;
password?=?““;
subject?=?““;
text?=?““;
flag?=?false;
st?=?new?CSocket;
//完成##############################
}
mail::~mail()
{
}
int?mail::base64(char*?pSrc?char*?pDst?int?nSrcLen)
{
const?char?Enbase64Tab[]?=?“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/“;
char?c1?c2?c3;????//?輸入緩沖區(qū)讀出3個(gè)字節(jié)
????int?nDstLen?=?0;?????????????//?輸出的字符計(jì)數(shù)
????int?nLineLen?=?0;????????????//?輸出的行長(zhǎng)度計(jì)數(shù)
????int?nDiv?=?nSrcLen?/?3;??????//?輸入數(shù)據(jù)長(zhǎng)度除以3得到的倍數(shù)
????int?nMod?=?nSrcLen?%?3;??????//?輸入數(shù)據(jù)長(zhǎng)度除以3得到的余數(shù)
?
????//?每次取3個(gè)字節(jié),編碼成4個(gè)字符
????for?(int?i?=?0;?i?????{
????????//?取3個(gè)字節(jié)
????????c1?=?*pSrc++;
????????c2?=?*pSrc++;
????????c3?=?*pSrc++;
?
????????//?編碼成4個(gè)字符
????????*pDst++?=?Enbase64Tab[c1?>>?2];
????????*pDst++?=?Enbase64Tab[((c1?<4)?|?(c2?>>?4))?&?0x3f];
????????*pDst++?=?Enbase64Tab[((c2?<2)?|?(c3?>>?6))?&?0x3f];
????????*pDst++?=?Enbase64Tab[c3?&?0x3f];
????????nLineLen?+=?4;
????????nDstLen?+=?4;
?
????????//?輸出換行?
????????/*if?(nLineLen?>?nMaxLineLen?-?4)
????????{
????????????*pDst++?=?‘\r‘;
????????????*pDst++?=?‘\n‘;
????????????nLineLen?=?0;
????????????nDstLen?+=?2;
????????}*/
????}
?
????//?編碼余下的字節(jié)
????if?(nMod?==?1)
????{
????????c1?=?*pSrc++;
????????*pDst++?=?Enbase64Tab[(c1?&?0xfc)?>>?2];
????????*pDst++?=?Enbase64Tab[((c1?&?0x03)?<4)];
????????*pDst++?=?‘=‘;
????????*pDst++?=?‘=‘;
????????nLineLen?+=?4;
????????nDstLen?+=?4;
????}
????else?if?(nMod?==?2)
????{
????????c1?=?*pSrc++;
????????c2?=?*pSrc++;
????????*pDst++?=?Enbase64Tab[(c1?&?0xfc)?>>?2];
????????*pDst++?=?Enbase64Tab[((c1?&?0x03)?<4)?|?((c2?&?0xf0)?>>?4)];
????????*pDst++?=?Enbase64Tab[((c2?&?0x0f)?<2)];
????????*pDst++?=?‘=‘;
????????nDstLen?+=?4;
????}
?
????//?輸出加個(gè)結(jié)束符
????*pDst?=?‘\0‘;
?
????return?nDstLen;
//完成##############################
}
bool?mail::sendmail(CString?serverCString?mail_toCString?mail_fromCString?userCString?psdCString?sbjtHWND?hwdCString?ffpathCWnd*?cdCString?tx)
{
????servername?=?server;
mailto?=?mail_to;
mailfrom?=?mail_from;
username?=?user;
password?=?psd;
subject?=?sbjt;
hwnd?=?hwd;
usna?=?(char*)malloc(username.GetLength()+1);
pwd?=?(char*)malloc(password.GetLength()+1);
????usna2?=?(char*)malloc((username.GetLength()+1)*4/3+4);
????pwd2?=?(char*)malloc((password.GetLength()+1)*4/3+4);
strcpy(usnausername);
strcpy(pwdpassword);
fpath?=?ffpath;
cnd?=?cd;
text?=?tx;
??? ???//寫到這里++++++++++++++##################完成?back?con?base64?sendlogin?login?body?cut?readtxt?sendmail
if(text==““)
text?=?readtxt();
if(
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????8421??2015-07-24?17:32??codesc.net\sendmail\mail.cpp
?????文件???????1916??2005-03-08?22:20??codesc.net\sendmail\mail.h
?????文件??????33384??2009-10-04?08:38??codesc.net\sendmail\mc.aps
?????文件???????2127??2009-10-04?08:38??codesc.net\sendmail\mc.clw
?????文件???????1928??2005-03-07?19:07??codesc.net\sendmail\mc.cpp
?????文件???????4395??2005-03-09?01:48??codesc.net\sendmail\mc.dsp
?????文件????????529??2005-03-07?19:07??codesc.net\sendmail\mc.dsw
?????文件???????1280??2005-03-07?19:07??codesc.net\sendmail\mc.h
?????文件???????7699??2005-03-09?01:42??codesc.net\sendmail\mc.rc
?????文件???????5097??2005-03-09?00:57??codesc.net\sendmail\mcDlg.cpp
?????文件???????1421??2005-03-08?23:06??codesc.net\sendmail\mcDlg.h
?????文件???????1410??2015-07-24?17:32??codesc.net\sendmail\MDlg.cpp
?????文件???????1247??2005-03-08?20:55??codesc.net\sendmail\MDlg.h
?????文件???????1078??2005-03-07?19:07??codesc.net\sendmail\res\mc.ico
?????文件????????394??2005-03-07?19:07??codesc.net\sendmail\res\mc.rc2
?????文件???????1078??2005-03-09?00:55??codesc.net\sendmail\res\mc1.ico
?????文件??????10777??2005-03-09?00:57??codesc.net\sendmail\res\圖片?007.jpg
?????文件???????1217??2015-07-24?17:32??codesc.net\sendmail\resource.h
?????文件????????204??2005-03-07?19:07??codesc.net\sendmail\StdAfx.cpp
?????文件???????1102??2005-03-07?19:07??codesc.net\sendmail\StdAfx.h
?????文件????????973??2015-07-24?17:32??codesc.net\sendmail\w.cpp
?????文件???????1103??2005-03-08?22:37??codesc.net\sendmail\w.h
?????目錄??????????0??2015-07-24?17:31??codesc.net\sendmail\res
?????目錄??????????0??2015-07-24?17:31??codesc.net\sendmail
?????目錄??????????0??2015-07-24?17:31??codesc.net
-----------?---------??----------?-----??----
????????????????88780????????????????????25
評(píng)論
共有 條評(píng)論