Files
Client/Server/ManageTool/ManageLibrary/Setup/SetupClient.cpp
LGram16 dd97ddec92 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>
2025-11-29 20:17:20 +09:00

96 lines
2.6 KiB
C++

#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));
}