C++ 日程管理软件 课程设计


C++ 日程管理软件 课程设计 C++ 日程管理软件 课程设计 C++ 日程管理软件 课程设计 C++ 日程管理软件 课程设计 C++ 日程管理软件 课程设计
资源截图
代码片段和文件信息
// base64Coder.cpp: implementation of the base64Coder class.
//
//////////////////////////////////////////////////////////////////////

#include “stdafx.h“
#include “base64Coder.h“

// Digits...
static char base64Digits[] = “ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/“;

BOOL base64Coder::m_Init = FALSE;
char base64Coder::m_DecodeTable[256];

#ifndef PAGESIZE
#define PAGESIZE 4096
#endif

#ifndef ROUNDTOPAGE
#define ROUNDTOPAGE(a) (((a/4096)+1)*4096)
#endif

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

base64Coder::base64Coder()
: m_pDBuffer(NULL)
m_pEBuffer(NULL)
m_nDBufLen(0)
m_nEBufLen(0)
{

}

base64Coder::~base64Coder()
{
if(m_pDBuffer != NULL)
delete [] m_pDBuffer;

if(m_pEBuffer != NULL)
delete [] m_pEBuffer;
}

LPCTSTR base64Coder::DecodedMessage() const 

return (LPCTSTR) m_pDBuffer;
}

PBYTE base64Coder::DecodedMessage(DWORD& nLenMessage) const
{
nLenMessage = m_nDDataLen;

return m_pDBuffer;
}

LPCTSTR base64Coder::EncodedMessage() const

return (LPCTSTR) m_pEBuffer;
}

void base64Coder::AllocEncode(DWORD nSize)
{
if(m_nEBufLen < nSize)
{
if(m_pEBuffer != NULL)
delete [] m_pEBuffer;

m_nEBufLen = ROUNDTOPAGE(nSize);
m_pEBuffer = new BYTE[m_nEBufLen];
}

::ZeroMemory(m_pEBuffer m_nEBufLen);
m_nEDataLen = 0;
}

void base64Coder::AllocDecode(DWORD nSize)
{
if(m_nDBufLen < nSize)
{
if(m_pDBuffer != NULL)
delete [] m_pDBuffer;

m_nDBufLen = ROUNDTOPAGE(nSize);
m_pDBuffer = new BYTE[m_nDBufLen];
}

::ZeroMemory(m_pDBuffer m_nDBufLen);
m_nDDataLen = 0;
}

void base64Coder::SetEncodeBuffer(const PBYTE pBuffer DWORD nBufLen)
{
DWORD i = 0;

AllocEncode(nBufLen);
while(i < nBufLen)
{
if(!_IsBadMimeChar(pBuffer[i]))
{
m_pEBuffer[m_nEDataLen] = pBuffer[i];
m_nEDataLen++;
}

i++;
}
}

void base64Coder::SetDecodeBuffer(const PBYTE pBuffer DWORD nBufLen)
{
AllocDecode(nBufLen);
::CopyMemory(m_pDBuffer pBuffer nBufLen);
m_nDDataLen = nBufLen;
}

void base64Coder::Encode(const PBYTE pBuffer DWORD nBufLen)
{
SetDecodeBuffer(pBuffer nBufLen);
AllocEncode(nBufLen * 2);

TempBucket Raw;
DWORD nIndex = 0;

while((nIndex + 3) <= nBufLen)
{
Raw.Clear();
::CopyMemory(&Raw m_pDBuffer + nIndex 3);
Raw.nSize = 3;
_EncodeToBuffer(Raw m_pEBuffer + m_nEDataLen);
nIndex += 3;
m_nEDataLen += 4;
}

if(nBufLen > nIndex)
{
Raw.Clear();
Raw.nSize = (BYTE) (nBufLen - nIndex);
::CopyMemory(&Raw m_pDBuffer + nIndex nBufLen - nIndex);
_EncodeToBuffer(Raw m_pEBuffer + m_nEDataLen);
m_nEDataLen += 4;
}
}

void base64Coder::Encode(LPCTSTR szMessage)
{
if(szMessage != NULL)
base64Coder::Encode((const PBYTE)szMessage strlen(szMessage));
}

void base64Coder::De

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       6846  2007-06-02 14:56  C++日程安排软件3rdPartyase64Coder.cpp

     文件       2106  2005-09-11 11:06  C++日程安排软件3rdPartyase64Coder.h

     文件      10667  2008-01-31 15:25  C++日程安排软件3rdPartyColourPicker.cpp

     文件       3980  2006-11-16 18:01  C++日程安排软件3rdPartyColourPicker.h

     文件      30534  2007-06-29 16:03  C++日程安排软件3rdPartyColourPopup.cpp

     文件       4853  2007-06-29 15:45  C++日程安排软件3rdPartyColourPopup.h

     文件      10962  2008-01-06 18:24  C++日程安排软件3rdPartyDragDrop.cpp

     文件       4839  2008-01-06 18:24  C++日程安排软件3rdPartyDragDrop.h

     文件       2000  2006-01-06 19:13  C++日程安排软件3rdPartyFIXALLOC.H

     文件       5702  2008-05-01 21:28  C++日程安排软件3rdPartyFontComboBox.cpp

     文件       1412  2008-05-01 21:38  C++日程安排软件3rdPartyFontComboBox.h

     文件       4860  2007-09-28 19:06  C++日程安排软件3rdPartyGUI.CPP

     文件        250  2004-03-27 19:15  C++日程安排软件3rdPartyGUI.H

     文件      33209  2008-01-26 19:03  C++日程安排软件3rdPartyIni.cpp

     文件      10081  2008-01-26 18:57  C++日程安排软件3rdPartyIni.h

     文件       2579  2005-02-12 11:55  C++日程安排软件3rdPartyLockableHeaderCtrl.cpp

     文件        886  2005-02-12 11:29  C++日程安排软件3rdPartyLockableHeaderCtrl.h

     文件       2849  2004-07-04 02:55  C++日程安排软件3rdPartyMemUtil.cpp

     文件       2053  2004-07-04 02:55  C++日程安排软件3rdPartyMemUtil.h

     文件      12632  2005-12-29 18:28  C++日程安排软件3rdPartymyspellaffentry.cxx

     文件       2370  2003-06-12 11:37  C++日程安排软件3rdPartymyspellaffentry.hxx

     文件      34900  2005-12-29 18:28  C++日程安排软件3rdPartymyspellaffixmgr.cxx

     文件       2325  2004-03-09 13:41  C++日程安排软件3rdPartymyspellaffixmgr.hxx

     文件        656  2004-02-04 13:57  C++日程安排软件3rdPartymyspellatypes.hxx

     文件        331  2003-03-26 14:02  C++日程安排软件3rdPartymyspellaseaffix.hxx

     文件      94402  2004-06-15 21:11  C++日程安排软件3rdPartymyspellcsutil.cxx

     文件       1877  2004-03-09 13:41  C++日程安排软件3rdPartymyspellcsutil.hxx

     文件       2985  2005-12-29 18:28  C++日程安排软件3rdPartymyspelldictmgr.cxx

     文件        469  2003-12-07 08:13  C++日程安排软件3rdPartymyspelldictmgr.hxx

     文件       4762  2005-12-29 18:28  C++日程安排软件3rdPartymyspellhashmgr.cxx

............此处省略517个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)