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

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

?? mimemessage.cpp

?? 非常好用的VC++源代碼
?? CPP
字號:
// MIMEMessage.cpp: implementation of the CMIMEMessage class.
// Author: Wes Clyburn (clyburnw@enmu.edu)
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "MIMEMessage.h"
#include "TextPlain.h"
#include "AppOctetStream.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

// Static Member Initializers
CMIMEMessage::CMIMETypeManager CMIMEMessage::m_MIMETypeManager;

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CMIMEMessage::CMIMEMessage()
{
	m_sMIMEContentType = _T( "multipart/mixed" );
	m_sPartBoundary = _T( "WC_MAIL_PaRt_BoUnDaRy_05151998" );
	m_sNoMIMEText = _T( "This is a multi-part message in MIME format." );

	// Register the MIME types handled by this class
	//
	CMIMEContentAgent* pType;
	// These objects are deleted by CMIMTypeManager's destructor
	pType = new CTextPlain( TEXT_PLAIN, GetCharsPerLine() );
	register_mime_type( pType );
	pType = new CAppOctetStream( APPLICATION_OCTETSTREAM );
	register_mime_type( pType );
}

CMIMEMessage::~CMIMEMessage()
{
}

// This implementation adds the part to the part-list used
//  to build the body.
BOOL CMIMEMessage::AddMIMEPart(LPCTSTR szContent,
							   int nContentType, 
							   LPCTSTR szParameters, 
							   int nEncoding, 
							   BOOL bPath )
{
	CMIMEPart part;
	part.m_nContentType = nContentType;
	part.m_sParameters = szParameters;
	part.m_nEncoding = nEncoding;
	part.m_bPath = bPath;
	part.m_sContent = szContent;
	part.m_sContent.TrimLeft();
	part.m_sContent.TrimRight();
	if( nContentType == TEXT_PLAIN )
		m_MIMEPartList.AddHead( part );
	else
		m_MIMEPartList.AddTail( part );
	return TRUE;
}

void CMIMEMessage::prepare_header()
{
	CString sTemp;

	// Let the base class add its headers
	CMailMessage::prepare_header();
	
	add_header_line( _T( "MIME-Version: 1.0" ) );
	sTemp.Format( _T( "Content-Type: %s; boundary=%s" ),
				  (LPCTSTR)m_sMIMEContentType,
				  (LPCTSTR)m_sPartBoundary );
	add_header_line( (LPCTSTR)sTemp );
}

void CMIMEMessage::prepare_body()
{
	// Class user may have assigned body text directly.
	// Convert it to just another MIME part to be processed.
	// If this default Content-Type isn't good enough for the
	// class user, he or she should have used AddMIMEPart() instead.
	if( m_sBody != _T( "" ) )
		AddMIMEPart( (LPCTSTR)m_sBody, TEXT_PLAIN, "", _7BIT, FALSE );

	// Initialize the body (replace current contents).
	m_sBody = m_sNoMIMEText;
	m_sBody += _T( "\r\n\r\n" );
	append_mime_parts();
	insert_message_end( m_sBody );

	// Let the base class take me to Funky Town
	CMailMessage::prepare_body();
}

void CMIMEMessage::insert_boundary( CString& sText )
{
	CString sTemp;
	if( sText.Right( 2 ) != _T( "\r\n" ) )
		sText += _T( "\r\n" );
	sTemp.Format( _T( "--%s\r\n" ), (LPCTSTR)m_sPartBoundary );
	sText += sTemp;
}

void CMIMEMessage::insert_message_end( CString& sText )
{
	CString sTemp;
	if( sText.Right( 2 ) != _T( "\r\n" ) )
		sText += _T( "\r\n" );
	sTemp.Format( _T( "--%s--\r\n" ), (LPCTSTR)m_sPartBoundary );
	sText += sTemp;
}

void CMIMEMessage::register_mime_type(CMIMEContentAgent* pMIMEType)
{
	ASSERT( pMIMEType != NULL );
	if( pMIMEType == NULL )
		return;
	m_MIMETypeManager.RegisterMIMEType( pMIMEType );
}


void CMIMEMessage::append_mime_parts()
{
	POSITION part_position;
	CMIMEPart* pMIMEPart = NULL;
	CMIMEContentAgent* pMIMEType = NULL;

	part_position = m_MIMEPartList.GetHeadPosition();
	// Get each part from the list, retrieve a handler for it,
	//  and let the handler do its thing.
	while( part_position != NULL )
	{
		pMIMEPart = & m_MIMEPartList.GetNext( part_position );
		pMIMEType = m_MIMETypeManager.GetHandler( pMIMEPart->m_nContentType );
		if( pMIMEType != NULL )
		{
			insert_boundary( m_sBody );
			pMIMEType->AppendPart( pMIMEPart->m_sContent,
								   pMIMEPart->m_sParameters,
								   pMIMEPart->m_nEncoding,
								   pMIMEPart->m_bPath,
								   m_sBody );
		}
	}

}

//////////////////////////////////////////////////////////////////////
// CMIMETypeManager Implementation
//////////////////////////////////////////////////////////////////////

CMIMEMessage::CMIMETypeManager::CMIMETypeManager()
{
}

CMIMEMessage::CMIMETypeManager::~CMIMETypeManager()
{
	POSITION pos;
	CMIMEContentAgent* p;
	m_csAccess.Lock();
	pos = m_MIMETypeList.GetHeadPosition();
	while( pos != NULL )
	{
		p = m_MIMETypeList.GetNext( pos );
		delete p;
	}
}

void CMIMEMessage::CMIMETypeManager::RegisterMIMEType(CMIMEContentAgent *pMIMEType)
{
	ASSERT( pMIMEType != NULL );
	if( pMIMEType == NULL )
		return;
	m_csAccess.Lock();
	m_MIMETypeList.AddTail( pMIMEType );
}



CMIMEContentAgent* CMIMEMessage::CMIMETypeManager::GetHandler(int nContentType)
{
	POSITION pos;
	CMIMEContentAgent* pType = NULL;

	m_csAccess.Lock();
	pos = m_MIMETypeList.GetHeadPosition();
	while( pos != NULL )
	{
		pType = m_MIMETypeList.GetNext( pos );
		if( pType->QueryType( nContentType ) == TRUE )
			break;
	}
	return pType;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合色狠狠综合色| 在线观看欧美精品| 成人激情免费网站| 99精品久久只有精品| 欧美最猛黑人xxxxx猛交| 欧美女孩性生活视频| 久久欧美中文字幕| 亚洲三级小视频| 秋霞成人午夜伦在线观看| 精品一区二区免费| 97久久超碰国产精品| 日韩小视频在线观看专区| 国产亚洲综合性久久久影院| 亚洲色图欧美偷拍| 精品一区二区三区日韩| 99久精品国产| 亚洲精品一区二区精华| 亚洲综合男人的天堂| 国产美女娇喘av呻吟久久| 色综合天天综合色综合av| 欧美一区日本一区韩国一区| 亚洲欧洲日产国产综合网| 亚洲成av人片在线观看无码| 国产成人欧美日韩在线电影| 911精品国产一区二区在线| 中文字幕在线观看一区| 亚洲欧美一区二区三区孕妇| 国产精品1区2区| 欧美欧美午夜aⅴ在线观看| 亚洲激情成人在线| 91视频国产资源| 国产精品久久久久精k8| 国产精品亚洲视频| www久久久久| 国产精品1024久久| 2019国产精品| 国产精品亚洲午夜一区二区三区 | 欧美调教femdomvk| 亚洲精品欧美激情| 91国产精品成人| 日日夜夜精品视频天天综合网| 91麻豆自制传媒国产之光| 亚洲精品国久久99热| 欧美午夜一区二区三区| 丝袜美腿亚洲综合| 日韩亚洲欧美成人一区| 日韩精品免费专区| 日韩欧美国产系列| 精品一区二区三区在线播放视频| 欧美日韩国产大片| 麻豆精品在线看| 日本一区二区免费在线| 99国产麻豆精品| 午夜伊人狠狠久久| 国产日韩欧美综合在线| 色综合欧美在线| 裸体一区二区三区| 国产片一区二区| 欧美肥大bbwbbw高潮| 久久草av在线| 午夜精品久久久久| 中文幕一区二区三区久久蜜桃| 欧美特级限制片免费在线观看| 九九国产精品视频| 亚洲国产精品视频| 国产精品网站一区| 欧美一级黄色大片| 成人精品视频一区二区三区| 日韩在线一区二区三区| 亚洲欧美一区二区三区久本道91| 欧美成人精品高清在线播放| 色天使色偷偷av一区二区| 久久精品国产澳门| 性久久久久久久久| 亚洲精品国产无套在线观| 国产欧美一区在线| 国产日韩三级在线| 国产亚洲综合色| 国产精品久久久久久亚洲伦| 精品国产3级a| 欧美精品一区二| 精品久久久久久久人人人人传媒 | 国产视频视频一区| 国产色综合久久| 欧美激情一区二区三区在线| 国产欧美精品在线观看| 久久久久久夜精品精品免费| 久久久久高清精品| 中文字幕不卡三区| 国产精品女人毛片| 亚洲美女视频在线观看| 一区二区三区四区av| 亚洲一区二区三区四区的| 亚洲成人免费av| 国产福利一区在线| 色婷婷精品久久二区二区蜜臂av | 国产精品综合二区| 成人av集中营| 欧美一区二区三区四区五区| 欧美xxxx在线观看| 亚洲女厕所小便bbb| 日本va欧美va瓶| 91原创在线视频| 久久久久久**毛片大全| 一区二区三区四区精品在线视频| 综合婷婷亚洲小说| 日本aⅴ亚洲精品中文乱码| 成人黄色一级视频| 日韩一区二区三区电影| 亚洲精品视频一区二区| 国产精品自在欧美一区| 91精品欧美一区二区三区综合在 | 国产激情一区二区三区桃花岛亚洲| 色噜噜狠狠色综合中国| 精品成人a区在线观看| 亚洲国产乱码最新视频 | 免费成人深夜小野草| 成人黄色综合网站| 久久综合九色综合97婷婷| 亚洲国产欧美在线人成| 91久久一区二区| 日本一区二区免费在线观看视频 | 久久精品视频在线看| 麻豆精品一区二区| 欧美成人免费网站| 麻豆91在线播放免费| 91精品国产综合久久久久久| 亚洲在线中文字幕| 欧美日韩一区二区三区四区五区| 国产精品传媒入口麻豆| av一区二区三区黑人| 中文字幕在线一区| 91伊人久久大香线蕉| 亚洲欧美欧美一区二区三区| 91丝袜美女网| 午夜电影一区二区三区| 337p亚洲精品色噜噜噜| 亚洲成在线观看| www久久精品| 91黄色免费网站| 蜜臀久久99精品久久久久久9| 久久久亚洲高清| 99久久精品情趣| 日本欧美一区二区| 久久免费看少妇高潮| 一本色道久久综合精品竹菊| 婷婷中文字幕一区三区| 国产欧美va欧美不卡在线| 92精品国产成人观看免费 | 色老头久久综合| 日本亚洲欧美天堂免费| 亚洲色图欧洲色图| 久久一区二区视频| 欧美日韩国产经典色站一区二区三区| 玖玖九九国产精品| 曰韩精品一区二区| 国产亚洲精品中文字幕| 欧美日韩精品电影| www.成人在线| 国产精品一品二品| 日本成人在线视频网站| 自拍av一区二区三区| 精品88久久久久88久久久| 欧美精品自拍偷拍| 91亚洲国产成人精品一区二三| 久久电影网站中文字幕| 亚洲va欧美va天堂v国产综合| 中文字幕国产一区| 国产欧美视频一区二区| 精品久久久久久久人人人人传媒 | 午夜精品视频一区| 亚洲桃色在线一区| 国产精品天天看| 久久久激情视频| 国产精品入口麻豆原神| 亚洲欧洲精品成人久久奇米网| 久久综合视频网| 国产三区在线成人av| 国产欧美日产一区| 亚洲品质自拍视频网站| 亚洲精品菠萝久久久久久久| 亚洲国产综合人成综合网站| 亚洲第一电影网| 韩国理伦片一区二区三区在线播放| 麻豆91在线播放| 91色|porny| 日韩写真欧美这视频| 日本一区二区不卡视频| 亚洲欧美电影院| 老司机免费视频一区二区三区| 国产成人一区二区精品非洲| 99国产精品国产精品久久| 777午夜精品视频在线播放| 久久久久久一二三区| 亚洲精品大片www| 精品无人区卡一卡二卡三乱码免费卡| 精东粉嫩av免费一区二区三区| 北岛玲一区二区三区四区| 欧美日韩成人综合| 中文字幕不卡的av|