亚洲欧美第一页_禁久久精品乱码_粉嫩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_switchinfo.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一区二区三区免费野_久草精品视频
91.com在线观看| 成人激情综合网站| 欧美夫妻性生活| 日本成人中文字幕在线视频| 欧美一区三区二区| 精品中文字幕一区二区 | 不卡一区二区中文字幕| 中文字幕一区日韩精品欧美| 99久久综合狠狠综合久久| 亚洲视频一区二区免费在线观看| 99re免费视频精品全部| 亚洲国产精品麻豆| 欧美一区二区三区人| 国产精品香蕉一区二区三区| 国产精品对白交换视频| 欧美日韩一二三区| 国产一区二区三区免费在线观看| 国产欧美日韩精品a在线观看| 99视频精品免费视频| 中文字幕一区免费在线观看| 欧美日韩精品三区| 麻豆中文一区二区| 亚洲精品在线免费播放| 国产成人亚洲综合a∨婷婷图片| 久久婷婷综合激情| 福利电影一区二区三区| 亚洲欧美日韩中文字幕一区二区三区| 91视频精品在这里| 首页国产丝袜综合| 欧美精品一区二区三区在线| 岛国一区二区三区| 亚洲欧美成aⅴ人在线观看| 色婷婷综合久久久中文字幕| 日韩中文字幕区一区有砖一区| 91麻豆精品91久久久久同性| 韩国女主播一区| 国产精品福利一区二区三区| 欧美四级电影网| 国产一区二区视频在线播放| 亚洲色图欧美在线| 91在线视频观看| 男人的j进女人的j一区| 国产亚洲精品7777| 色播五月激情综合网| 免费成人美女在线观看| 中文字幕精品—区二区四季| 99久久久无码国产精品| 亚洲精品国产a| 久久久久久一二三区| 欧美亚洲综合另类| 国产一区二区影院| 亚洲国产日韩精品| 久久久久久久av麻豆果冻| 91久久精品一区二区三| 九九精品视频在线看| 国产精品国产馆在线真实露脸 | 国产一区欧美日韩| 欧美国产亚洲另类动漫| 99国产精品久久久| 日韩激情中文字幕| 一区二区欧美精品| 欧美极品少妇xxxxⅹ高跟鞋 | 久久女同精品一区二区| 91官网在线观看| 国产福利一区二区三区视频 | 美女在线视频一区| 一区二区三区精密机械公司| 久久久久久久久97黄色工厂| 欧美一区二区三区爱爱| 色综合欧美在线视频区| 国产+成+人+亚洲欧洲自线| 日韩和欧美一区二区三区| 亚洲美女视频一区| 中文字幕av资源一区| 日韩亚洲欧美高清| 91福利在线免费观看| 成人h动漫精品| 国产一区二区三区蝌蚪| 五月综合激情婷婷六月色窝| 成人免费在线视频| 中文字幕不卡在线观看| 国产婷婷色一区二区三区四区 | 欧美日韩一区二区三区高清| 99久久精品情趣| 老司机精品视频在线| 夜夜精品浪潮av一区二区三区| 成人欧美一区二区三区视频网页 | 免费成人在线观看| 亚洲大片精品永久免费| 亚洲视频一区二区免费在线观看| 国产精品天美传媒| 国产精品国产精品国产专区不蜜| 国产女人aaa级久久久级| 久久久激情视频| 精品乱人伦小说| 日韩精品一区二区三区在线观看| 欧美精品丝袜中出| 欧美高清一级片在线| 欧美日韩国产综合一区二区 | 99这里只有久久精品视频| 国产99久久久国产精品潘金| 高清视频一区二区| 精品一区二区三区在线观看| 午夜精品福利视频网站| 日本vs亚洲vs韩国一区三区二区| 亚洲欧洲制服丝袜| 亚洲最大色网站| 青青草伊人久久| 国产一区二区三区| 成人影视亚洲图片在线| 成人av集中营| 欧美午夜视频网站| 欧美日韩成人在线| 日韩精品一区二区三区在线播放| 日韩欧美电影一区| 久久久高清一区二区三区| 国产精品视频观看| 一二三区精品视频| 亚洲成年人网站在线观看| 日韩一区精品字幕| 国产一区二区h| 91一区二区在线| 欧美精品久久一区| 久久综合av免费| 中文字幕亚洲精品在线观看 | voyeur盗摄精品| 在线日韩av片| 欧美色图一区二区三区| 日韩一级高清毛片| 中文字幕亚洲不卡| 偷窥国产亚洲免费视频| 美女视频黄久久| 不卡高清视频专区| 欧美日本在线看| 91麻豆国产精品久久| 91精品国产综合久久精品麻豆| 久久日韩粉嫩一区二区三区| 亚洲欧洲制服丝袜| 亚洲一区二区三区四区五区中文| 久久综合综合久久综合| 91视视频在线直接观看在线看网页在线看 | 国产一区高清在线| 欧美亚洲丝袜传媒另类| 精品国产sm最大网站| 国产精品福利影院| 首页国产欧美日韩丝袜| 99精品久久免费看蜜臀剧情介绍| 3d动漫精品啪啪一区二区竹菊 | 91麻豆国产在线观看| 精品久久99ma| 亚洲人精品一区| 粉嫩一区二区三区在线看| 91精品国产欧美一区二区18| 1区2区3区欧美| 国产一区二区美女诱惑| 欧美色视频在线观看| 中文字幕五月欧美| 国产传媒一区在线| 正在播放亚洲一区| 伊人一区二区三区| 懂色av中文一区二区三区| 这里是久久伊人| 亚洲欧美日韩系列| 91在线观看视频| 国产亚洲女人久久久久毛片| 麻豆成人久久精品二区三区红 | 国产麻豆精品在线| 欧美精品久久一区二区三区| 亚洲九九爱视频| 99久久99久久综合| 国产精品人成在线观看免费| 经典一区二区三区| 欧美大片在线观看一区二区| 亚洲一区二区影院| 在线不卡免费av| 亚洲成人久久影院| 欧美性色欧美a在线播放| 亚洲日本韩国一区| 91在线视频免费91| 亚洲特黄一级片| 91麻豆精品在线观看| 亚洲免费成人av| 色国产综合视频| 国产精品久久久久9999吃药| 天天影视涩香欲综合网| 欧美理论片在线| 免费观看一级欧美片| 91精品国产色综合久久不卡电影| 青青草97国产精品免费观看 | 国产乱子伦视频一区二区三区| 欧美成人在线直播| 精品一区二区三区蜜桃| 欧美哺乳videos| 国内成+人亚洲+欧美+综合在线| 亚洲精品一区二区三区福利| 精品一区二区三区免费毛片爱| 日韩欧美一区二区不卡| 亚洲制服丝袜一区| 欧美成人乱码一区二区三区| 狠狠色综合日日|