cgportcheckhandler.cpp
来自「天之炼狱1服务器端源文件游戏服务端不完整」· C++ 代码 · 共 92 行
CPP
92 行
//----------------------------------------------------------------------//// Filename : CGPortCheckHandler.cpp// Written By : Reiot// Description :////----------------------------------------------------------------------// include files#include "CGPortCheck.h"#include "Properties.h"#include <stdio.h>#ifdef __GAME_SERVER__ #include "DB.h"#endif//----------------------------------------------------------------------// // CGPortCheckHander::execute()// // 霸烙 辑滚啊 肺弊牢 辑滚肺何磐 CGPortCheck 菩哦阑 罐霸 登搁,// ConnectionInfo甫 货肺 眠啊窍霸 等促.// //----------------------------------------------------------------------void CGPortCheckHandler::execute ( CGPortCheck * pPacket ) throw ( ProtocolException , Error ){ __BEGIN_TRY __BEGIN_DEBUG_EX#ifdef __GAME_SERVER__ const string& host = pPacket->getHost(); DWORD IP = inet_addr(host.c_str()); uint port = pPacket->getPort(); //cout << "CGPortCheck: [" << IP << "] " << host.c_str() << ":" << port << endl; Statement* pStmt = NULL; try { pStmt = g_pDatabaseManager->getConnection("DARKEDEN")->createStatement(); pStmt->executeQuery( "INSERT IGNORE INTO UserIPInfo (Name, IP, Port, ServerID) VALUES ( '%s', %lu, %u, %d )", pPacket->getPCName().c_str(), IP, port, g_pConfig->getPropertyInt("ServerID") ); if (pStmt->getAffectedRowCount()==0) { // 促矫 茄锅 矫档 pStmt->executeQuery( "UPDATE UserIPInfo Set IP=%lu, Port=%u WHERE Name='%s'", IP, port, pPacket->getPCName().c_str()); //log(LOG_CGCONNECT, pPacket->getPCName(), "", host); } SAFE_DELETE(pStmt); } catch (SQLQueryException & ) { /* try { // 促矫 茄锅 矫档 pStmt->executeQuery( "UPDATE UserIPInfo Set IP=%ld, Port=%d WHERE Name='%s'", IP, port, pPacket->getPCName().c_str()); //log(LOG_CGCONNECT, pPacket->getPCName(), "", host); SAFE_DELETE(pStmt); } catch (SQLQueryException & sqe) { //se) { SAFE_DELETE(pStmt); // 公矫茄促. //throw ProtocolException("Duplicated IPInfo"); } */ SAFE_DELETE(pStmt); }#else cout << pPacket->toString() << endl; #endif __END_DEBUG_EX __END_CATCH}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?