Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
95
Server/ManageTool/ManageLibrary/Setup/SetupClient.cpp
Normal file
95
Server/ManageTool/ManageLibrary/Setup/SetupClient.cpp
Normal file
@@ -0,0 +1,95 @@
|
||||
#include "stdafx.h"
|
||||
#include "SetupClient.h"
|
||||
|
||||
#include <cstdio>
|
||||
#include <Utility/Setup/ServerSetup.h>
|
||||
|
||||
ManageSetup::ClientSetup::ClientSetup()
|
||||
{
|
||||
SetSetupFileName("./ManageSetupClient.ini");
|
||||
Load();
|
||||
}
|
||||
|
||||
ManageSetup::ClientSetup::~ClientSetup()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
ManageSetup::ClientSetup& ManageSetup::ClientSetup::GetInstance()
|
||||
{
|
||||
static ClientSetup clientSetup;
|
||||
return clientSetup;
|
||||
}
|
||||
|
||||
void ManageSetup::ClientSetup::Load(const char* szSetupFileName)
|
||||
{
|
||||
char szIP[MAX_PATH];
|
||||
GetPrivateProfileString("ManageClient", "ManageServerIP", 0, szIP, MAX_PATH, szSetupFileName);
|
||||
|
||||
UINT nPort = GetPrivateProfileInt("ManageClient", "ManageServerPort",
|
||||
CServerSetup::ManageServerManageClientListen, szSetupFileName);
|
||||
|
||||
m_ManageServerAddr.set_addr(szIP, static_cast<unsigned short>(nPort));
|
||||
}
|
||||
|
||||
|
||||
void ManageSetup::ClientSetup::Save(const char* szSetupFileName)
|
||||
{
|
||||
char szIP[MAX_PATH];
|
||||
_snprintf(szIP, MAX_PATH - 1, "%s", m_ManageServerAddr.get_addr_string());
|
||||
szIP[MAX_PATH - 1] = 0;
|
||||
|
||||
char szPort[MAX_PATH];
|
||||
_snprintf(szPort, MAX_PATH - 1, "%d", m_ManageServerAddr.get_port_in());
|
||||
szPort[MAX_PATH - 1] = 0;
|
||||
|
||||
WritePrivateProfileString("ManageClient", "ManageServerIP", szIP, szSetupFileName);
|
||||
WritePrivateProfileString("ManageClient", "ManageServerPort", szPort, szSetupFileName);
|
||||
}
|
||||
|
||||
void ManageSetup::ClientSetup::SetSetupFileName(const char* szSetupFileName)
|
||||
{
|
||||
if(0 != szSetupFileName)
|
||||
{
|
||||
_snprintf(m_szSetupFileName, MAX_PATH, "%s", szSetupFileName);
|
||||
m_szSetupFileName[MAX_PATH - 1] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
bool ManageSetup::ClientSetup::SerializeIn(const char* szData_In, unsigned long dwDataLen_In)
|
||||
{
|
||||
if(dwDataLen_In == GetExpectedSerializedDataSize())
|
||||
{
|
||||
int nAddrSize = 0;
|
||||
|
||||
memcpy(&m_ManageServerAddr.get_addr(), szData_In, sizeof(sockaddr));
|
||||
memcpy(&nAddrSize, szData_In + sizeof(sockaddr), sizeof(int));
|
||||
|
||||
m_ManageServerAddr.set_size(nAddrSize);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ManageSetup::ClientSetup::SerializeOut(char* szData_InOut, unsigned long& dwDataLen_InOut)
|
||||
{
|
||||
if(GetExpectedSerializedDataSize() < dwDataLen_InOut)
|
||||
{
|
||||
int nAddrSize = m_ManageServerAddr.get_size();
|
||||
|
||||
memcpy(szData_InOut, &m_ManageServerAddr.get_addr(), sizeof(sockaddr));
|
||||
memcpy(szData_InOut + sizeof(sockaddr), &nAddrSize, sizeof(int));
|
||||
|
||||
dwDataLen_InOut = GetExpectedSerializedDataSize();
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
unsigned long ManageSetup::ClientSetup::GetExpectedSerializedDataSize()
|
||||
{
|
||||
return static_cast<unsigned long>(sizeof(sockaddr) + sizeof(int));
|
||||
}
|
||||
Reference in New Issue
Block a user