資源簡介
PC遠程控制程序,類似于QQ遠程協助代碼,主要涉及的內容:圖像獲取,位圖轉換、壓縮存儲、多線程、Socket通信、內存映射,等等!

代碼片段和文件信息
#include?“stdafx.h“
#include?“base64.h“
#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif
CString?Cbase64::m_sbase64Alphabet?=?
_T(?“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/“?);
int?Cbase64::m_nMask[]?=?{?0?1?3?7?15?31?63?127?255?};
Cbase64::Cbase64()
{
}
Cbase64::~Cbase64()
{
}
CString?Cbase64::Encode(LPCTSTR?szEncoding?int?nSize)
{
CString?sOutput?=?_T(?““?);
int?nNumBits?=?6;
UINT?nDigit;
int?lp?=?0;
ASSERT(?szEncoding?!=?NULL?);
if(?szEncoding?==?NULL?)
return?sOutput;
m_szInput?=?szEncoding;
m_nInputSize?=?nSize;
m_nBitsRemaining?=?0;
nDigit?=?read_bits(?nNumBits?&nNumBits?lp?);
while(?nNumBits?>?0?)
{
sOutput?+=?m_sbase64Alphabet[?(int)nDigit?];
nDigit?=?read_bits(?nNumBits?&nNumBits?lp?);
}
//?Pad?with?‘=‘?as?per?RFC?1521
while(?sOutput.GetLength()?%?4?!=?0?)
{
sOutput?+=?‘=‘;
}
return?sOutput;
}
//?The?size?of?the?output?buffer?must?not?be?less?than
//?3/4?the?size?of?the?input?buffer.?For?simplicity
//?make?them?the?same?size.
int?Cbase64::Decode(LPCTSTR?szDecoding?LPTSTR?szOutput)
{
CString?sInput;
????int?c?lp?=0;
int?nDigit;
????int?nDecode[?256?];
ASSERT(?szDecoding?!=?NULL?);
ASSERT(?szOutput?!=?NULL?);
if(?szOutput?==?NULL?)
return?0;
if(?szDecoding?==?NULL?)
return?0;
sInput?=?szDecoding;
if(?sInput.GetLength()?==?0?)
return?0;
//?Build?Decode?Table
//
for(?int?i?=?0;?i?256;?i++?)?
nDecode[i]?=?-2;?//?Illegal?digit
for(?i=0;?i?64;?i++?)
{
nDecode[?m_sbase64Alphabet[?i?]?]?=?i;
nDecode[?m_sbase64Alphabet[?i?]?|?0x80?]?=?i;?//?Ignore?8th?bit
nDecode[?‘=‘?]?=?-1;?
nDecode[?‘=‘?|?0x80?]?=?-1;?//?Ignore?MIME?padding?char
????}
//?Clear?the?output?buffer
memset(?szOutput?0?sInput.GetLength()?+?1?);
//?Decode?the?Input
//
for(?lp?=?0?i?=?0;?lp? {
c?=?sInput[?lp?];
nDigit?=?nDecode[?c?&?0x7F?];
if(?nDigit?-1?)?
{
return?0;
}?
else?if(?nDigit?>=?0?)?
//?i?(index?into?output)?is?incremented?by?write_bits()
write_bits(?nDigit?&?0x3F?6?szOutput?i?);
????}
return?i;
}
UINT?Cbase64::read_bits(int?nNumBits?int?*?pBitsRead?int&?lp)
{
????ULONG?lScratch;
????while(?(?m_nBitsRemaining? ???(?lp? {
int?c?=?m_szInput[?lp++?];
????????m_lBitStorage?<<=?8;
????????m_lBitStorage?|=?(c?&?0xff);
m_nBitsRemaining?+=?8;
????}
????if(?m_nBitsRemaining? {
lScratch?=?m_lBitStorage?<(?nNumBits?-?m_nBitsRemaining?);
*pBitsRead?=?m_nBitsRemaining;
m_nBitsRemaining?=?0;
????}?
else?
{
lScratch?=?m_lBitStorage?>>?(?m_nBitsRemaining?-?nNumBits?);
*pBitsRead?=?nNumBits;
m_nBitsRemaining?-=?nNumBits;
????}
????return?(UINT)lScratch?&?m_nMask[nNumBits];
}
void?Cbase64::write_bits(UINT?nBits
?int?nNumBits
?LPTSTR?szOutput
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-12-21?10:19??65520755MyControlPC3.26\
?????目錄???????????0??2013-01-06?17:52??65520755MyControlPC3.26\MyControlPC3.26\
?????文件????????3282??2001-11-19?16:47??65520755MyControlPC3.26\MyControlPC3.26\ba
?????文件?????????794??2001-11-19?16:49??65520755MyControlPC3.26\MyControlPC3.26\ba
?????目錄???????????0??2013-09-02?19:16??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\
?????文件????????4886??2011-02-22?11:45??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyConfigure.cpp
?????文件?????????856??2011-01-12?15:53??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyConfigure.h
?????文件????????5802??2011-02-22?10:18??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.001
?????文件??????200460??2012-12-21?10:20??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.aps
?????文件????????3169??2011-02-22?11:52??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.cpp
?????文件????????5891??2011-02-22?12:00??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.dsp
?????文件?????????541??2011-02-22?10:18??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.dsw
?????文件????????1246??2011-02-22?11:48??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.h
?????文件?????4336640??2013-09-02?19:19??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.ncb
?????文件???????56832??2012-12-29?15:15??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.opt
?????文件????????3465??2012-12-21?10:21??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.plg
?????文件???????19713??2011-03-26?11:07??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.rc
?????文件????????2560??2013-09-02?09:38??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPC.suo
?????文件????????1525??2011-02-22?10:18??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPCDoc.cpp
?????文件?????????550??2011-02-22?10:18??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\MyCtrlPCDoc.h
?????文件???????28572??2011-03-26?11:08??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\PeeperFrm.cpp
?????文件????????2826??2011-03-26?11:08??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\PeeperFrm.h
?????文件????????1552??2011-02-22?12:00??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\PeeperSetDlg.cpp
?????文件?????????672??2011-02-22?11:49??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\PeeperSetDlg.h
?????文件???????28886??2011-03-26?11:08??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\PeeperWnd.cpp
?????文件????????4379??2011-03-26?11:08??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\PeeperWnd.h
?????目錄???????????0??2013-09-02?09:37??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\Release\
?????文件???????10082??2012-12-21?10:21??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\Release\ba
?????文件???????????0??2012-12-21?10:21??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\Release\ba
?????文件???????25785??2012-12-21?10:21??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\Release\MyConfigure.obj
?????文件???????????0??2012-12-21?10:21??65520755MyControlPC3.26\MyControlPC3.26\PeeperClient\Release\MyConfigure.sbr
............此處省略81個文件信息
評論
共有 條評論