亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 天麗鳥mail.cpp

?? 郵件內容呼,郵件內容提取至尋呼機上,數據庫操作,郵件內容提取
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
#include "stdafx.h"
#include "pop3.h"
#include "mail.h"
#include "CCustom.h"
#include "stdio.h"

#include <afxdb.h>

BOOL g_bExited = TRUE;
BOOL g_bTerminate = FALSE;

char Base64[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 63, 52, 53, 54, 55,
56, 57, 58, 59, 60, 61, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 0,
0, 0, 0, 0, 0, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 0, 0, 0, 0, 0};


Mail::Mail()
{   
	m_nState = STATE_DISCONNECT;
	CString strConnect;
	char dbName[20],dbUser[20],dbPswd[20];
	GetPrivateProfileString("database","DSN","",dbName,20,".//trans.ini");
    GetPrivateProfileString("database","UID","",dbUser,20,".//trans.ini");
    GetPrivateProfileString("database","PWD","",dbPswd,20,".//trans.ini");
    
	strConnect.Format("DSN=%s;UID=%s;PWd=%s",dbName,dbUser,dbPswd);
	if(m_db.OpenEx(strConnect,CDatabase::noOdbcDialog))
	{
		if (!m_accountinfo.Create(m_db.m_hdbc,"s_email_addr"))
		{
			AfxMessageBox("打開s_email_addr.dbf失敗! ");
			exit(0);
		}
		if (!m_filterinfo.Create(m_db.m_hdbc,"s_email_filter"))
		{
			AfxMessageBox("打開s_email_filter.dbf失敗!");
			exit(0);
		}
		if (!m_switchinfo.Create(m_db.m_hdbc,"s_email"))
		{
			AfxMessageBox("打開s_email.dbf失敗! ");
			exit(0);
		}
		if (!m_mailinfo.Create(m_db.m_hdbc,"angbaocall"))
		{
			AfxMessageBox("打開angbaocall.dbf失敗!");
			exit(0);
		}
	}
	else
	{
		AfxMessageBox("連接數據庫失敗!");
		exit(0);
	}

}


Mail::~Mail()
{
	Close();
}

void Mail::Create(char *strServer, char *strUser, char *strPass)
{
	memset(m_strServer, 0, sizeof(m_strServer));
	strcpy(m_strServer, strServer);
	memset(m_strUser, 0, sizeof(m_strUser));
	strcpy(m_strUser, strUser);
    memset(m_strPass, 0, sizeof(m_strPass));
    strcpy(m_strPass, strPass);
}

void Mail::Close()
{
	//關閉數據庫和表
	m_accountinfo.Close();
	m_mailinfo.Close();
	m_switchinfo.Close();
	m_filterinfo.Close();
	m_db.Close();
	//斷開pop3連接,釋放socket
}


void Mail::DecodeBase64(char *des, char *src)
{
	BYTE cTempHigh, cTempLow, cFirst6Bits, cSecond6Bits, cThird6Bits, cFourth6Bits;
	int i = 0;
	int j = 0;
	int length = strlen(src);
	for(i = 0, j = 0; i < length;j = j + 3)
	{
		cFirst6Bits = Base64[(int)(src[i++])];
		cSecond6Bits = Base64[(int)(src[i++])];
		cThird6Bits = Base64[(int)(src[i++])];
		cFourth6Bits = Base64[(int)(src[i++])];
		cTempHigh = cFirst6Bits << 2;
		cTempLow = cSecond6Bits >> 4;
		des[j] = cTempHigh | cTempLow;
		cTempHigh = cSecond6Bits << 4;
		cTempLow = cThird6Bits >> 2;
		des[j + 1] = cTempHigh | cTempLow;
		cTempHigh = cThird6Bits << 6;
		des[j + 2] = cTempHigh | cFourth6Bits;
	}
	des[j] = 0;
}

void Mail::DecodeQP(char *des, char *src)
{
	int length;
	int flag1 = 0;
	int flag2 = 0;
	int i, j;
	char gg[3];
	length = strlen(src);
	for(i = 0, j = 0; i < length; i++)
	{
		if(src[i] == '=')
		{
			flag1 = 1;
			continue;
		}
		if(flag1 == 1)
		{
			gg[0] = src[i];
			flag1 = 0;
			flag2 = 1;
			continue;
		}
		if(flag2 == 1)
		{
			gg[1] = src[i];
			gg[2] = 0;
			flag1 = 0;
			flag2 = 0;
			sscanf(gg, "%02x", des + j);
			j++;
			continue;
		}
		des[j++] = src[i];
	}
}


BOOL Mail::DecodeSub(char *des, const char *src)
{
	char buffer[256];
	char field[256];
	char *temptr;
//	char *ptr;
	int i = 0;
	memset(buffer, 0, 256);
	strcpy(buffer, src);
	// gb2312
	if((temptr = strstr(buffer, "B?")) || (temptr = strstr(buffer,"b?")))
	{
		if(temptr = strstr(buffer, "=?"))
		    strncpy(des, buffer + 8, temptr - buffer - 8);
		temptr = buffer;
		for(i = 1; i < strlen(buffer); i++)
		{
			  if((buffer[i - 1] == 'B' && buffer[i] == '?') || (buffer[i - 1] == 'b' && buffer[i] == '?'))
			  {
				 temptr = temptr + 2;
				 break;
			  }
			  else
			  	  temptr = temptr + 1;
		}
		for(i = 0; i < strlen(temptr); i++)
		{
			if(temptr[i] == '?' && temptr[i + 1] == '=')
			{
				temptr[i] = 0;
				break;
			}
		}
		memset(field, 0, sizeof(field));
		DecodeBase64(field, temptr);
	}
			//ISO-8859-1
	else if((temptr = strstr(buffer, "Q?")) || (temptr = strstr(buffer,"q?")))
	{
		if(temptr = strstr(buffer, "=?"))
		    strncpy(des, buffer + 8, temptr - buffer - 8);
		temptr = buffer;
		int n = strlen(buffer);
		for(i = 1; i < strlen(buffer); i++)
		{
			if((buffer[i - 1] == 'Q' && buffer[i] == '?') || (buffer[i - 1] == 'q' && buffer[i] == '?'))
			{
				temptr = temptr + 2;
				break;
			}
			else
				temptr = temptr + 1;
		}
		n = strlen(temptr);
		for(i = 0; i < strlen(temptr); i++)
		{
			if(temptr[i] == '?' && temptr[i + 1] == '=')
			{
				temptr[i] = 0;
				break;
			}
		}
		memset(field, 0, sizeof(field));
		DecodeQP(field, temptr);
	}
	else
	{
		memset(field, 0, sizeof(field));
		strcpy(field, buffer + 8);
	}
	strcat(des,field);
	return TRUE;
}

BOOL Mail::DecodeLetter(char* m_message)
{
//	FILE *fp;
//	fp = fopen("c:\\temp\\mail.txt", "ab");

	char *ptr;
	char *beforeptr;
	char *tmpptr;
	char attach[32];
	char eachline[256];
	char buffer[256];
	char tempcontent[512];
	char boundary[256];
	int ctype = 0;
	int ctransfer;
	int nTmplen;
	BOOL isattach = FALSE;
	BOOL flag = TRUE;
    BOOL isbody = FALSE;
	BOOL haveattach = FALSE;
	int m_maxContent;
	int m_maxSubject;
	memset(tempcontent, 0, 512);
	m_maxContent = GetPrivateProfileInt("maxlength","content",300,".//trans.ini");
	m_maxSubject = GetPrivateProfileInt("maxlength","subject",100,".//trans.ini");
    if(m_maxContent > 300)
		m_maxContent = 300;
	if(m_maxSubject > 100)
		m_maxSubject = 100;
	memset(attach, 0, 32);

	beforeptr = m_message;
	if(beforeptr == NULL)
		return FALSE;
	ptr = strstr(beforeptr, "\r\n");
	if(!ptr)
		return FALSE;
    memset(eachline, '\0', 256);
	nTmplen = ptr - beforeptr;
	strncpy(eachline, beforeptr, nTmplen);
	beforeptr = ptr + 2;
    if(eachline == NULL)
		return FALSE;
	strcpy(letterto, eachline + 5);
	tmpptr = strstr(letterto, "@");
	if(tmpptr == NULL)
		return FALSE;
	tmpptr[0] = '\0';
	strcat(letterto, "@gnetpri.com");

//	strcpy(letterto, "wlj@gnetpri.com");
	if (!m_accountinfo.GetBP(letterto))
	{
		strcpy(content, "該用戶沒有設置該服務!");
		return TRUE;
	}
	
	if (!m_switchinfo.GetSwitch(m_accountinfo.szUid))
	{
		strcpy(content, "沒有該用戶信息!");
		return TRUE;
	}

	if (!m_switchinfo.m_mailswitch) {
		strcpy(content, "該用戶設置該服務關閉!");
		return TRUE;
	}

	if (m_switchinfo.m_mailfilter) {
		strcpy(content, "該用戶設置該地址過濾!");
		if (!m_filterinfo.GetFilter(m_accountinfo.szUid,letterfrom))
			return FALSE;
		if (m_filterinfo.m_filter) {
			return TRUE;
		}
	}

	if (m_switchinfo.m_format==0)  {		//數字機
			GetPrivateProfileString("type","digital","",content,10,".//trans.ini");
	    	if(!m_mailinfo.InsertInfo((char*)m_accountinfo.szUid,m_switchinfo.m_mailservice,m_accountinfo.m_station,m_switchinfo.m_zone,content))
				return FALSE;
			return TRUE;
		}
		
	// 郵件到達通知
	
	// 郵件內容呼

	if ((m_switchinfo.m_mailservice==0)||(m_switchinfo.m_mailservice==1)) 
	{
		char *tmp;
		//處理頭信息
		ctype = 1;
		ctransfer = 0;
		while(TRUE)
		{

			if(beforeptr == NULL)
				return TRUE;
			if(beforeptr[0] == '\0')
				break;
			if((beforeptr[0] == '\r') && (beforeptr[1] == '\n'))
			{
				beforeptr = beforeptr + 2;
				if(ctype == 1)
					isbody = TRUE;
				break;
			}
			ptr = strstr(beforeptr, "\r\n");
			if(!ptr)
				return TRUE;
			memset(eachline, '\0', 256);
			nTmplen = ptr - beforeptr;
			if(nTmplen >= 256)
				nTmplen = 255;
			strncpy(eachline, beforeptr, nTmplen);
			beforeptr = ptr + 2;
			if(eachline == NULL)
				return TRUE;
			if(strstr(eachline, "Content-Type"))
			{
				char *tmp = strlwr(eachline);
				if(strstr(tmp, "text/plain"))
				    ctype = 1;
				else if(strstr(tmp, "text/html"))
					ctype = 2;
				else if(strstr(tmp, "multipart/"))
				{
					if(strstr(tmp, "multipart/mixed"))
						haveattach = TRUE;
					ctype = 3;
				}
				else ctype = 4;
			}
			if(strstr(eachline, "Content-Transfer-Encoding"))
			{
				char *tmp = strlwr(eachline);
				if(strstr(tmp, "base64"))
					ctransfer = 1;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色悠久久久久综合欧美99| 91久久精品一区二区| 日本伊人精品一区二区三区观看方式| 亚洲视频免费观看| 夜夜揉揉日日人人青青一国产精品| 亚洲欧美另类小说视频| 亚洲综合激情小说| 午夜av电影一区| 强制捆绑调教一区二区| 激情综合色播激情啊| 成人午夜碰碰视频| 一本久道久久综合中文字幕 | 欧美韩国日本综合| 国产精品免费av| 亚洲国产精品精华液网站| 免费高清在线一区| 国产一区中文字幕| 一本到不卡精品视频在线观看| 欧美三级视频在线观看| 精品久久久久久久一区二区蜜臀| 国产视频一区二区在线| 亚洲免费在线播放| 日本午夜精品一区二区三区电影 | 成人app在线观看| 在线视频一区二区三区| 欧美一区二区久久久| 久久精品水蜜桃av综合天堂| |精品福利一区二区三区| 亚洲成av人片在线| 国产成人一区二区精品非洲| 在线看国产一区| 久久久久久久网| 亚洲动漫第一页| 国产精品一区二区你懂的| 在线观看视频一区| 国产网红主播福利一区二区| 久久女同性恋中文字幕| 91久久线看在观草草青青| 欧美色区777第一页| 2021久久国产精品不只是精品| 国产精品麻豆99久久久久久| 亚洲一区精品在线| 国产精品亚洲一区二区三区在线| 欧美色视频在线| 中文在线一区二区| 九九热在线视频观看这里只有精品| 成人毛片视频在线观看| 欧美一区二区三区在线视频| 中文字幕在线不卡一区二区三区| 亚洲mv在线观看| 99国产精品久久久久久久久久| 欧美成人video| 日韩午夜小视频| 日韩你懂的电影在线观看| 亚洲欧美精品午睡沙发| 国产高清在线观看免费不卡| 欧美一区二区三区在线视频| 午夜国产精品一区| 风间由美一区二区三区在线观看| 欧美大黄免费观看| 丝袜美腿成人在线| 欧洲av在线精品| 亚洲免费观看高清在线观看| 成人av在线观| 久久久精品中文字幕麻豆发布| 精品中文字幕一区二区小辣椒| 欧美日韩午夜精品| 亚洲一区中文日韩| 在线观看亚洲精品视频| 一区二区三区欧美久久| 色综合婷婷久久| 亚洲欧美一区二区不卡| 91免费观看视频在线| 中文字幕亚洲一区二区av在线| 国产河南妇女毛片精品久久久| 欧美精品一区男女天堂| 国产专区综合网| 欧美国产丝袜视频| 成人97人人超碰人人99| 国产精品家庭影院| 99久久婷婷国产综合精品| 国产精品电影院| 色综合天天在线| 一区二区三区成人在线视频| 欧美吻胸吃奶大尺度电影| 亚洲电影你懂得| k8久久久一区二区三区| 美女一区二区在线观看| 色综合天天在线| 国产精品久久久久久久久免费丝袜| 国产欧美日韩亚州综合| 日韩高清不卡一区二区三区| 91精品国产麻豆国产自产在线 | 日本一区二区三区高清不卡| 成人午夜av在线| 亚洲精品久久久蜜桃| 欧美日韩午夜在线| 韩国一区二区视频| 国产精品超碰97尤物18| 欧美日韩一卡二卡三卡 | 精品乱码亚洲一区二区不卡| 国产精品一二三四区| 国产精品国产三级国产普通话三级 | 亚洲女人的天堂| 欧美精品在欧美一区二区少妇| 激情五月激情综合网| 日韩一区在线免费观看| 91精品国产综合久久福利软件 | 激情综合网av| 一区二区三区 在线观看视频| 欧美一区二区三区四区久久| 国产xxx精品视频大全| 一区二区三区四区激情| 久久久一区二区三区| 色综合av在线| 国产福利一区二区三区在线视频| 一区二区三区欧美久久| 久久噜噜亚洲综合| 欧美日韩日日夜夜| av在线播放成人| 国产一区二区精品久久| 亚洲韩国一区二区三区| 精品久久国产老人久久综合| 在线观看视频91| 99精品一区二区三区| 久久精品国产精品亚洲红杏| 一区二区三区高清| 国产精品不卡在线| www激情久久| 91精品福利在线一区二区三区| 99re热视频这里只精品| 国产成人免费在线观看| 精品一区二区av| 性感美女久久精品| 亚洲精品videosex极品| 国产精品国产三级国产aⅴ入口 | 麻豆精品一区二区综合av| 亚洲免费观看高清在线观看| 国产午夜亚洲精品午夜鲁丝片| 91精品国产综合久久久久久久| 一本久久综合亚洲鲁鲁五月天| 福利电影一区二区三区| 国产制服丝袜一区| 久草中文综合在线| 韩国中文字幕2020精品| 黄页视频在线91| 久久国产精品第一页| 久久精品国产亚洲高清剧情介绍| 日韩精品一二三区| 蜜桃精品视频在线观看| 久久成人av少妇免费| 久久国产精品区| 国产老妇另类xxxxx| 国产精品原创巨作av| 国产91精品一区二区| 丁香激情综合五月| 99久久精品免费精品国产| 99精品视频一区二区三区| 99精品桃花视频在线观看| 91丨porny丨国产入口| 日本道色综合久久| 欧美喷水一区二区| 欧美不卡在线视频| 国产精品久久久一区麻豆最新章节| 国产精品久久久久一区| 一区二区三区久久| 免费欧美在线视频| 国产乱对白刺激视频不卡| 成人精品国产一区二区4080| 色综合天天在线| 欧美久久久久久久久| 精品福利在线导航| 中文字幕日韩av资源站| 亚洲成a天堂v人片| 国产成人啪午夜精品网站男同| 成人黄色电影在线| 欧美疯狂做受xxxx富婆| 久久久久久毛片| 亚洲一区日韩精品中文字幕| 久久精品国产99| 色综合色综合色综合色综合色综合 | 日本亚洲欧美天堂免费| 成人久久久精品乱码一区二区三区| av动漫一区二区| 欧美一区在线视频| 日本一区二区久久| 青青草国产成人99久久| aa级大片欧美| 精品乱码亚洲一区二区不卡| 亚洲乱码中文字幕| 国产一区999| 欧美日韩亚洲综合一区| 中文字幕不卡三区| 日韩精品国产欧美| 91免费看视频| 亚洲国产高清在线观看视频| 日本v片在线高清不卡在线观看| 粉嫩13p一区二区三区| 欧美大片顶级少妇| 天堂蜜桃91精品|