file encoding to utf-8
This commit is contained in:
@@ -6,14 +6,14 @@ class _CPostItMemoryBlock;
|
||||
|
||||
/**
|
||||
* @class CPostIt
|
||||
* @brief 게임런처에서 게임 클라이언트로 정보를 전달 및 클라이언트에서 수신하기 위하여 사용되는 클래스
|
||||
* @brief 게임런처에서 게임 클라이언트로 정보를 전달 및 클라이언트에서 수신하기 위하여 사용되는 클래스
|
||||
*/
|
||||
class CPostIt
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* @brief CPostIt constructor
|
||||
* @param [in] szAppName : 게임의 이름이 들어간다.
|
||||
* @param [in] szAppName : 게임의 이름이 들어간다.
|
||||
*/
|
||||
explicit CPostIt( LPCSTR szAppName );
|
||||
|
||||
@@ -23,45 +23,45 @@ public:
|
||||
~CPostIt( void );
|
||||
|
||||
/**
|
||||
* @brief CPostIt class에서 보유하고 있는 데이타를 클립보드에 저장한다.
|
||||
* @brief CPostIt class에서 보유하고 있는 데이타를 클립보드에 저장한다.
|
||||
*/
|
||||
BOOL Flush( void );
|
||||
|
||||
/**
|
||||
* @brief CPostIt class에서 보유하고 있는 데이타 및 클립보드에 있는 내용을 지운다.
|
||||
* @brief CPostIt class에서 보유하고 있는 데이타 및 클립보드에 있는 내용을 지운다.
|
||||
*/
|
||||
void Empty( void );
|
||||
|
||||
/**
|
||||
* @brief 데이타를 읽어온다.
|
||||
* @param [in] lpszKeyName : 불러올 데이타의 키. "KEY" 식의 내용을 넣는다.
|
||||
* @param [in] lpszData : 불러올 데이타의 버퍼
|
||||
* @param [in] nSize : lpszData 버퍼의 최대사이즈
|
||||
* @brief 데이타를 읽어온다.
|
||||
* @param [in] lpszKeyName : 불러올 데이타의 키. "KEY" 식의 내용을 넣는다.
|
||||
* @param [in] lpszData : 불러올 데이타의 버퍼
|
||||
* @param [in] nSize : lpszData 버퍼의 최대사이즈
|
||||
*/
|
||||
BOOL Get( LPCSTR lpszKeyName, LPSTR lpszData, DWORD nSize );
|
||||
|
||||
/**
|
||||
* @brief 저장할 데이타를 넣는다.
|
||||
* @param [in] lpBuffer : 저장할 데이타. "KEY=DATA" 식의 내용을 넣는다.
|
||||
* @brief 저장할 데이타를 넣는다.
|
||||
* @param [in] lpBuffer : 저장할 데이타. "KEY=DATA" 식의 내용을 넣는다.
|
||||
*/
|
||||
BOOL Set( LPCSTR lpszData );
|
||||
|
||||
/**
|
||||
* @brief 저장할 데이타를 넣는다.
|
||||
* @param [in] lpszKeyName : 저장할 데이타의 키. "KEY" 식의 내용을 넣는다.
|
||||
* @param [in] lpszData : 저장할 데이타. "DATA" 식의 내용을 넣는다.
|
||||
* @brief 저장할 데이타를 넣는다.
|
||||
* @param [in] lpszKeyName : 저장할 데이타의 키. "KEY" 식의 내용을 넣는다.
|
||||
* @param [in] lpszData : 저장할 데이타. "DATA" 식의 내용을 넣는다.
|
||||
*/
|
||||
BOOL Set( LPCSTR lpszKeyName, LPCSTR lpszData );
|
||||
|
||||
/**
|
||||
* @brief 저장할 데이타(DWORD)를 넣는다.
|
||||
* @param [in] lpBuffer : 저장할 데이타. "KEY=DATA" 식의 데이타를 넣는다.
|
||||
* @param [in] dwValue : 저장할 데이타. (DWORD)
|
||||
* @brief 저장할 데이타(DWORD)를 넣는다.
|
||||
* @param [in] lpBuffer : 저장할 데이타. "KEY=DATA" 식의 데이타를 넣는다.
|
||||
* @param [in] dwValue : 저장할 데이타. (DWORD)
|
||||
*/
|
||||
BOOL Set( LPCSTR lpszKeyName, DWORD dwValue );
|
||||
|
||||
/**
|
||||
* @brief CPostIt class를 복사한다. (클래스 constructor에 이름 인자가 있기 때문에, 새 이름을 지정해야함)
|
||||
* @brief CPostIt class를 복사한다. (클래스 constructor에 이름 인자가 있기 때문에, 새 이름을 지정해야함)
|
||||
* @param [in] pPostIt : Destination class
|
||||
* @param [in] lpszKeyName : Destination class's new app-name
|
||||
*/
|
||||
|
||||
@@ -60,9 +60,9 @@ bool CDir::Create(const char * c_szFilter, const char* c_szPath, BOOL bCheckedEx
|
||||
if (!c_szExtension)
|
||||
continue;
|
||||
|
||||
// NOTE : 임시 변수 - [levites]
|
||||
// 최종적으로는 무조건 TRUE 형태로 만든다.
|
||||
// 그전에 전 프로젝트의 CDir을 사용하는 곳에서 Extension을 "wav", "gr2" 이런식으로 넣게끔 한다. - [levites]
|
||||
// NOTE : 임시 변수 - [levites]
|
||||
// 최종적으로는 무조건 TRUE 형태로 만든다.
|
||||
// 그전에 전 프로젝트의 CDir을 사용하는 곳에서 Extension을 "wav", "gr2" 이런식으로 넣게끔 한다. - [levites]
|
||||
if (bCheckedExtension)
|
||||
{
|
||||
std::string strFilter = c_szFilter;
|
||||
|
||||
@@ -72,7 +72,7 @@ int CMemoryTextFileLoader::SplitLine2(DWORD dwLine, CTokenVector* pstTokenVector
|
||||
|
||||
pstTokenVector->push_back(c_rstLine.substr(beginPos, endPos - beginPos));
|
||||
|
||||
// 추가 코드. 맨뒤에 탭이 있는 경우를 체크한다. - [levites]
|
||||
// 추가 코드. 맨뒤에 탭이 있는 경우를 체크한다. - [levites]
|
||||
if (int(c_rstLine.find_first_not_of(c_szDelimeter, basePos)) < 0)
|
||||
break;
|
||||
} while (basePos < c_rstLine.length());
|
||||
@@ -116,7 +116,7 @@ bool CMemoryTextFileLoader::SplitLine(DWORD dwLine, CTokenVector* pstTokenVector
|
||||
|
||||
pstTokenVector->push_back(c_rstLine.substr(beginPos, endPos - beginPos));
|
||||
|
||||
// 추가 코드. 맨뒤에 탭이 있는 경우를 체크한다. - [levites]
|
||||
// 추가 코드. 맨뒤에 탭이 있는 경우를 체크한다. - [levites]
|
||||
if (int(c_rstLine.find_first_not_of(c_szDelimeter, basePos)) < 0)
|
||||
break;
|
||||
} while (basePos < c_rstLine.length());
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#pragma warning(disable:4786) // character 255 ³Ñ¾î°¡´Â°Å ²ô±â
|
||||
#pragma warning(disable:4786) // character 255 넘어가는거 끄기
|
||||
|
||||
#include <windows.h>
|
||||
#include <vector>
|
||||
|
||||
@@ -85,7 +85,7 @@ BYTE* CMappedFile::AppendDataBlock( const void* pBlock, DWORD dwBlockSize )
|
||||
|
||||
void CMappedFile::Destroy()
|
||||
{
|
||||
if (m_pLZObj) // 압축된 데이터가 이 포인터로 연결 된다
|
||||
if (m_pLZObj) // 압축된 데이터가 이 포인터로 연결 된다
|
||||
{
|
||||
delete m_pLZObj;
|
||||
m_pLZObj = NULL;
|
||||
@@ -144,7 +144,7 @@ int CMappedFile::Seek(DWORD offset, int iSeekType)
|
||||
return m_seekPosition;
|
||||
}
|
||||
|
||||
// 2004.09.16.myevan.MemoryMappedFile 98/ME 개수 제한 문제 체크
|
||||
// 2004.09.16.myevan.MemoryMappedFile 98/ME 개수 제한 문제 체크
|
||||
//DWORD g_dwCount=0;
|
||||
|
||||
int CMappedFile::Map(const void **dest, int offset, int size)
|
||||
@@ -192,7 +192,7 @@ int CMappedFile::Map(const void **dest, int offset, int size)
|
||||
return 0;
|
||||
}
|
||||
|
||||
// 2004.09.16.myevan.MemoryMappedFile 98/ME 개수 제한 문제 체크
|
||||
// 2004.09.16.myevan.MemoryMappedFile 98/ME 개수 제한 문제 체크
|
||||
//g_dwCount++;
|
||||
//Tracenf("MAPFILE %d", g_dwCount);
|
||||
|
||||
@@ -247,7 +247,7 @@ void CMappedFile::Unmap(LPCVOID data)
|
||||
{
|
||||
if (UnmapViewOfFile(data))
|
||||
{
|
||||
// 2004.09.16.myevan.MemoryMappedFile 98/ME 개수 제한 문제 체크
|
||||
// 2004.09.16.myevan.MemoryMappedFile 98/ME 개수 제한 문제 체크
|
||||
//g_dwCount--;
|
||||
//Tracenf("UNMAPFILE %d", g_dwCount);
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#endif
|
||||
|
||||
#pragma warning(disable:4710) // not inlined
|
||||
#pragma warning(disable:4786) // character 255 ³Ñ¾î°¡´Â°Å ²ô±â
|
||||
#pragma warning(disable:4786) // character 255 넘어가는거 끄기
|
||||
#pragma warning(disable:4244) // type conversion possible lose of data
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
@@ -27,7 +27,7 @@ BOOL ELTimer_Init()
|
||||
|
||||
DWORD ELTimer_GetMSec()
|
||||
{
|
||||
//assert(gs_dwBaseTime!=0 && "ELTimer_Init 를 먼저 실행하세요");
|
||||
//assert(gs_dwBaseTime!=0 && "ELTimer_Init 를 먼저 실행하세요");
|
||||
//LARGE_INTEGER liTickCount;
|
||||
//QueryPerformanceCounter(&liTickCount);
|
||||
return timeGetTime() - gs_dwBaseTime; //(liTickCount.QuadPart*1000 / gs_liTickCountPerSec.QuadPart)-gs_dwBaseTime;
|
||||
@@ -36,7 +36,7 @@ DWORD ELTimer_GetMSec()
|
||||
VOID ELTimer_SetServerMSec(DWORD dwServerTime)
|
||||
{
|
||||
NANOBEGIN
|
||||
if (0 != dwServerTime) // nanomite를 위한 더미 if
|
||||
if (0 != dwServerTime) // nanomite를 위한 더미 if
|
||||
{
|
||||
gs_dwServerTime = dwServerTime;
|
||||
gs_dwClientTime = CTimer::instance().GetCurrentMillisecond();
|
||||
@@ -70,7 +70,7 @@ CTimer::CTimer()
|
||||
ELTimer_Init();
|
||||
|
||||
NANOBEGIN
|
||||
if (this) // nanomite를 위한 더미 if
|
||||
if (this) // nanomite를 위한 더미 if
|
||||
{
|
||||
m_dwCurrentTime = 0;
|
||||
m_bUseRealTime = true;
|
||||
|
||||
@@ -433,7 +433,7 @@ void MyCreateDirectory(const char* path)
|
||||
|
||||
if (strlen(path) >= 3)
|
||||
{
|
||||
if (*(path + 1) == ':') // C:, D: °°Àº °æ¿ì¸¦ üũ
|
||||
if (*(path + 1) == ':') // C:, D: 같은 경우를 체크
|
||||
path += 3;
|
||||
}
|
||||
|
||||
|
||||
@@ -64,9 +64,9 @@ extern void GetExceptionPathName(const char * sz_Name, std::string & OnlyFileN
|
||||
extern void GetWorkingFolder(std::string & strFileName);
|
||||
extern void StringLowers(char * pString);
|
||||
extern void StringPath(std::string & rString);
|
||||
extern void StringPath(char * pString); // 모두 소문자로 만들고, \는 /로 바꾼다.
|
||||
extern void StringPath(const char * c_szSrc, char * szDest); // 모두 소문자로 만들고, \는 /로 바꾼다.
|
||||
extern void StringPath(const char * c_szSrc, std::string & rString); // 모두 소문자로 만들고, \는 /로 바꾼다.
|
||||
extern void StringPath(char * pString); // 모두 소문자로 만들고, \는 /로 바꾼다.
|
||||
extern void StringPath(const char * c_szSrc, char * szDest); // 모두 소문자로 만들고, \는 /로 바꾼다.
|
||||
extern void StringPath(const char * c_szSrc, std::string & rString); // 모두 소문자로 만들고, \는 /로 바꾼다.
|
||||
extern void PrintAsciiData(const void* data, int bytes);
|
||||
bool IsFile(const char* filename);
|
||||
bool IsGlobalFileName(const char * c_szFileName);
|
||||
|
||||
@@ -145,7 +145,7 @@ LONG __stdcall EterExceptionFilter(_EXCEPTION_POINTERS* pExceptionInfo)
|
||||
//WinExec()
|
||||
/*CreateProcess("cmd.exe",NULL,NULL,NULL,FALSE,
|
||||
CREATE_NEW_PROCESS_GROUP|DETACHED_PROCESS,NULL,NULL,NULL,NULL);
|
||||
MessageBox(NULL,"게임 실행에 치명적인 문제가 발생하였습니다.\n게임을 종료하고 에러 로그를 남깁니다.\n에러 로그를 서버에 보내시겠습니까?","에러 발생!",MB_YESNO);*/
|
||||
MessageBox(NULL,"게임 실행에 치명적인 문제가 발생하였습니다.\n게임을 종료하고 에러 로그를 남깁니다.\n에러 로그를 서버에 보내시겠습니까?","에러 발생!",MB_YESNO);*/
|
||||
|
||||
/*
|
||||
__l.BeginCompressInBuffer(__msg,__idx,__cmsg);
|
||||
|
||||
@@ -120,9 +120,9 @@ void CLZObject::BeginCompress(const void * pvIn, UINT uiInLen)
|
||||
m_pbIn = (const BYTE *) pvIn;
|
||||
|
||||
// sizeof(SHeader) +
|
||||
// 암호화를 위한 fourCC 4바이트
|
||||
// 압축된 후 만들어질 수 있는 최대 용량 +
|
||||
// 암호화를 위한 8 바이트
|
||||
// 암호화를 위한 fourCC 4바이트
|
||||
// 압축된 후 만들어질 수 있는 최대 용량 +
|
||||
// 암호화를 위한 8 바이트
|
||||
m_dwBufferSize = sizeof(THeader) + sizeof(DWORD) + (uiInLen + uiInLen / 64 + 16 + 3) + 8;
|
||||
|
||||
m_pbBuffer = gs_freeMemMgr.Alloc(m_dwBufferSize);
|
||||
@@ -139,9 +139,9 @@ void CLZObject::BeginCompressInBuffer(const void * pvIn, UINT uiInLen, void * /*
|
||||
m_pbIn = (const BYTE *) pvIn;
|
||||
|
||||
// sizeof(SHeader) +
|
||||
// 암호화를 위한 fourCC 4바이트
|
||||
// 압축된 후 만들어질 수 있는 최대 용량 +
|
||||
// 암호화를 위한 8 바이트
|
||||
// 암호화를 위한 fourCC 4바이트
|
||||
// 압축된 후 만들어질 수 있는 최대 용량 +
|
||||
// 암호화를 위한 8 바이트
|
||||
m_dwBufferSize = sizeof(THeader) + sizeof(DWORD) + (uiInLen + uiInLen / 64 + 16 + 3) + 8;
|
||||
|
||||
m_pbBuffer = gs_freeMemMgr.Alloc(m_dwBufferSize);
|
||||
|
||||
@@ -12,9 +12,9 @@ class CLZObject
|
||||
typedef struct SHeader
|
||||
{
|
||||
DWORD dwFourCC;
|
||||
DWORD dwEncryptSize; // 암호화된 크기
|
||||
DWORD dwCompressedSize; // 압축된 데이터 크기
|
||||
DWORD dwRealSize; // 실제 데이터 크기
|
||||
DWORD dwEncryptSize; // 암호화된 크기
|
||||
DWORD dwCompressedSize; // 압축된 데이터 크기
|
||||
DWORD dwRealSize; // 실제 데이터 크기
|
||||
} THeader;
|
||||
#pragma pack()
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Filename: tea.c
|
||||
* Description: TEA 암호화 모듈
|
||||
* Description: TEA 암호화 모듈
|
||||
*
|
||||
* Author: 김한주 (aka. 비엽, Cronan), 송영진 (aka. myevan, 빗자루)
|
||||
* Author: 김한주 (aka. 비엽, Cronan), 송영진 (aka. myevan, 빗자루)
|
||||
*/
|
||||
#include "StdAfx.h"
|
||||
#include "tea.h"
|
||||
@@ -10,24 +10,24 @@
|
||||
|
||||
/*
|
||||
* TEA Encryption Module Instruction
|
||||
* Edited by 김한주 aka. 비엽, Cronan
|
||||
* Edited by 김한주 aka. 비엽, Cronan
|
||||
*
|
||||
* void tea_code(const unsigned long sz, const unsigned long sy, const unsigned long *key, unsigned long *dest)
|
||||
* void tea_decode(const unsigned long sz, const unsigned long sy, const unsigned long *key, unsigned long *dest)
|
||||
* 8바이트를 암호/복호화 할때 사용된다. key 는 16 바이트여야 한다.
|
||||
* sz, sy 는 8바이트의 역순으로 대입한다.
|
||||
* 8바이트를 암호/복호화 할때 사용된다. key 는 16 바이트여야 한다.
|
||||
* sz, sy 는 8바이트의 역순으로 대입한다.
|
||||
*
|
||||
* int tea_decrypt(unsigned long *dest, const unsigned long *src, const unsigned long *key, int size);
|
||||
* int tea_encrypt(unsigned long *dest, const unsigned long *src, const unsigned long *key, int size);
|
||||
* 한꺼번에 8 바이트 이상을 암호/복호화 할때 사용한다. 만약 size 가
|
||||
* 8의 배수가 아니면 8의 배수로 크기를 "늘려서" 암호화 한다.
|
||||
* 한꺼번에 8 바이트 이상을 암호/복호화 할때 사용한다. 만약 size 가
|
||||
* 8의 배수가 아니면 8의 배수로 크기를 "늘려서" 암호화 한다.
|
||||
*
|
||||
* ex. tea_code(pdwSrc[1], pdwSrc[0], pdwKey, pdwDest);
|
||||
* tea_decrypt(pdwDest, pdwSrc, pdwKey, nSize);
|
||||
*/
|
||||
|
||||
#define TEA_ROUND 32 // 32 를 권장하며, 높을 수록 결과가 난해해 진다.
|
||||
#define DELTA 0x9E3779B9 // DELTA 값 바꾸지 말것.
|
||||
#define TEA_ROUND 32 // 32 를 권장하며, 높을 수록 결과가 난해해 진다.
|
||||
#define DELTA 0x9E3779B9 // DELTA 값 바꾸지 말것.
|
||||
|
||||
void tea_code(const unsigned long sz, const unsigned long sy, const unsigned long *key, unsigned long *dest)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user