📄 gamegate.h
字号:
#ifndef _GAMEGATE_DEFINE
#define _GAMEGATE_DEFINE
class CSessionInfo
{
public:
SOCKET sock;
// SOCKADDR_IN addr;
int nServerUserIndex;
int nGateIndex;
BOOL fLoginCode;
int nPreviousCheckCode;
int nCrackWarningLevel;
CHAR SendBuffer[DATA_BUFSIZE];
int nSendBufferLen;
//SocData: string; //罐篮 滚欺
//SendData: string; //焊尘巴捞 巢澜
// SendLock: Boolean;
// SendLatestTime: longword;
// CheckSendLength: integer;
// SendAvailable: Boolean;
// SendCheck: Boolean;
// TimeOutTime: longword;
// ReceiveLength: integer;
// ReceiveTime: longword;
// shandle: integer;
// RemoteAddr: string;
// For Overlapped I/O
OVERLAPPED Overlapped;
WSABUF DataBuf;
CHAR Buffer[DATA_BUFSIZE];
// CHAR RemainBuff[DATA_BUFSIZE];
INT bufLen;
INT nOvFlag;
CSessionInfo()
{
bufLen = 0;
}
int Recv()
{
nOvFlag = OVERLAPPED_RECV;
DWORD nRecvBytes = 0, nFlags = 0;
DataBuf.len = DATA_BUFSIZE - bufLen;
DataBuf.buf = Buffer + bufLen;
memset( &Overlapped, 0, sizeof( Overlapped ) );
return WSARecv( sock, &DataBuf, 1, &nRecvBytes, &nFlags, &Overlapped, 0 );
}
bool HasCompletionPacket()
{
return memchr( Buffer, '!', bufLen ) ? true : false;
}
// recv 滚欺俊辑 肯己等 窍唱狼 菩哦阑 惶酒辰促.
char * ExtractPacket( char *pPacket )
{
int packetLen = (char *) memchr( Buffer, '!', bufLen ) - Buffer + 1;
memcpy( pPacket, Buffer, packetLen );
memmove( Buffer, Buffer + packetLen, DATA_BUFSIZE - packetLen );
bufLen -= packetLen;
return pPacket + packetLen;
}
};
typedef struct tag_TSENDBUFF
{
SOCKET sock;
int nGateIndex;
char szData[1024];
}_TSENDBUFF, *_LPTSENDBUFF;
#define LOGPARAM_STR 1
#define LOGPARAM_INT 2
void InsertLogMsg(UINT nID);
void InsertLogMsg(LPTSTR lpszMsg);
void InsertLogPacket(char *pszPacket);
void InsertLogMsgParam(UINT nID, void *pParam, BYTE btFlags);
void SendSocketMsgS (_LPTMSGHEADER lpMsg, int nLen1, char *pszData1, int nLen2, char *pszData2);
void SendSocketMsgS (int nIdent, WORD wIndex, int nSocket, WORD wSrvIndex, int nLen, char *pszData);
extern BOOL g_fTerminated;
#endif //_GAMEGATE_DEFINE
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -