Files
wnmj/Servers/服务器组件/登录服务器/InitParameter.cpp
2026-02-13 14:34:15 +08:00

132 lines
5.4 KiB
C++

#include "StdAfx.h"
#include "InitParameter.h"
//////////////////////////////////////////////////////////////////////////////////
//服务时间
#define TIME_CONNECT 30 //重连时间
#define TIME_COLLECT 300 //统计时间
#define TIME_LOAD_LIST 120 //加载列表
#define TIME_RELOAD_LIST 600 //加载列表
//客户时间
#define TIME_INTERMIT 0 //中断时间
#define TIME_ONLINE_COUNT 600 //人数时间
//////////////////////////////////////////////////////////////////////////////////
//构造函数
CInitParameter::CInitParameter()
{
InitParameter();
}
//析构函数
CInitParameter::~CInitParameter()
{
}
//初始化
VOID CInitParameter::InitParameter()
{
//时间定义
m_wConnectTime=TIME_CONNECT;
m_wCollectTime=TIME_COLLECT;
m_wLoadListTime=TIME_LOAD_LIST;
m_wReLoadListTime=TIME_RELOAD_LIST;
//客户时间
m_wIntermitTime=TIME_INTERMIT;
m_wOnLineCountTime=TIME_ONLINE_COUNT;
//系统配置
m_cbDelayList=TRUE;
m_wMaxConnect=MAX_CONTENT;
m_wServicePort=PORT_LOGON;
ZeroMemory(m_szServerName,sizeof(m_szServerName));
//协调信息
m_wCorrespondPort=PORT_CENTER;
ZeroMemory(&m_CorrespondAddress,sizeof(m_CorrespondAddress));
//连接信息
ZeroMemory(&m_ServiceAddress,sizeof(m_ServiceAddress));
ZeroMemory(&m_AccountsDBParameter,sizeof(m_AccountsDBParameter));
ZeroMemory(&m_TreasureDBParameter,sizeof(m_TreasureDBParameter));
ZeroMemory(&m_PlatformDBParameter,sizeof(m_PlatformDBParameter));
return;
}
//加载配置
VOID CInitParameter::LoadInitParameter()
{
//重置参数
InitParameter();
//获取路径
TCHAR szWorkDir[MAX_PATH]=TEXT("");
CWHService::GetWorkDirectory(szWorkDir,CountArray(szWorkDir));
//构造路径
TCHAR szIniFile[MAX_PATH]=TEXT("");
_sntprintf_s(szIniFile,CountArray(szIniFile),TEXT("%s\\ServerParameter.ini"),szWorkDir);
//读取配置
CWHIniData IniData;
IniData.SetIniFilePath(szIniFile);
//读取配置
m_cbDelayList=IniData.ReadInt(TEXT("LogonServer"),TEXT("DelayList"),m_cbDelayList);
m_wMaxConnect=IniData.ReadInt(TEXT("LogonServer"),TEXT("ConnectMax"),m_wMaxConnect);
m_wServicePort=IniData.ReadInt(TEXT("LogonServer"),TEXT("ServicePort"),m_wServicePort);
IniData.ReadString(TEXT("ServerInfo"),TEXT("ServiceName"),NULL,m_szServerName,CountArray(m_szServerName));
IniData.ReadString(TEXT("ServerInfo"),TEXT("ServiceAddr"),NULL,m_ServiceAddress.szAddress,CountArray(m_ServiceAddress.szAddress));
//协调信息
m_wCorrespondPort=IniData.ReadInt(TEXT("Correspond"),TEXT("ServicePort"),m_wCorrespondPort);
IniData.ReadString(TEXT("ServerInfo"),TEXT("CorrespondAddr"),NULL,m_CorrespondAddress.szAddress,CountArray(m_CorrespondAddress.szAddress));
//连接信息
m_AccountsDBParameter.wDataBasePort=(WORD)IniData.ReadInt(TEXT("AccountsDB"),TEXT("DBPort"),1433);
IniData.ReadString(TEXT("AccountsDB"),TEXT("DBAddr"),NULL,m_AccountsDBParameter.szDataBaseAddr,CountArray(m_AccountsDBParameter.szDataBaseAddr));
IniData.ReadString(TEXT("AccountsDB"),TEXT("DBUser"),NULL,m_AccountsDBParameter.szDataBaseUser,CountArray(m_AccountsDBParameter.szDataBaseUser));
IniData.ReadString(TEXT("AccountsDB"),TEXT("DBPass"),NULL,m_AccountsDBParameter.szDataBasePass,CountArray(m_AccountsDBParameter.szDataBasePass));
IniData.ReadString(TEXT("AccountsDB"),TEXT("DBName"),szAccountsDB,m_AccountsDBParameter.szDataBaseName,CountArray(m_AccountsDBParameter.szDataBaseName));
TCHAR szInFile[260]=TEXT("");
TCHAR szPath[MAX_PATH]=TEXT("");
GetCurrentDirectory(sizeof(szPath),szPath);
_sntprintf_s(szInFile,sizeof(szInFile),TEXT("%s\\ServerParameter.ini"),szPath);
TCHAR tcUrlAdders[128];
TCHAR tcUrlAdder[128];
ZeroMemory(tcUrlAdders,sizeof(tcUrlAdders));
GetPrivateProfileString(TEXT("AccountsDB"),TEXT("Url"),NULL,tcUrlAdders,sizeof(tcUrlAdders),szInFile);
CopyMemory(tcUrlAdder,tcUrlAdders,sizeof(tcUrlAdders));
////构造地址
//TCHAR szDownLoadUrls[MAX_PATH]=TEXT("");
//_sntprintf_s(szDownLoadUrls,CountArray(szDownLoadUrls),TEXT("%s/DownLoad.aspx?KindID=%ld"),tcUrlAdder,1);
//CTraceService::TraceString(szDownLoadUrls,TraceLevel_Normal);
//连接信息
m_TreasureDBParameter.wDataBasePort=(WORD)IniData.ReadInt(TEXT("TreasureDB"),TEXT("DBPort"),1433);
IniData.ReadString(TEXT("TreasureDB"),TEXT("DBAddr"),NULL,m_TreasureDBParameter.szDataBaseAddr,CountArray(m_TreasureDBParameter.szDataBaseAddr));
IniData.ReadString(TEXT("TreasureDB"),TEXT("DBUser"),NULL,m_TreasureDBParameter.szDataBaseUser,CountArray(m_TreasureDBParameter.szDataBaseUser));
IniData.ReadString(TEXT("TreasureDB"),TEXT("DBPass"),NULL,m_TreasureDBParameter.szDataBasePass,CountArray(m_TreasureDBParameter.szDataBasePass));
IniData.ReadString(TEXT("TreasureDB"),TEXT("DBName"),szTreasureDB,m_TreasureDBParameter.szDataBaseName,CountArray(m_TreasureDBParameter.szDataBaseName));
//连接信息
m_PlatformDBParameter.wDataBasePort=(WORD)IniData.ReadInt(TEXT("PlatformDB"),TEXT("DBPort"),1433);
IniData.ReadString(TEXT("PlatformDB"),TEXT("DBAddr"),NULL,m_PlatformDBParameter.szDataBaseAddr,CountArray(m_PlatformDBParameter.szDataBaseAddr));
IniData.ReadString(TEXT("PlatformDB"),TEXT("DBUser"),NULL,m_PlatformDBParameter.szDataBaseUser,CountArray(m_PlatformDBParameter.szDataBaseUser));
IniData.ReadString(TEXT("PlatformDB"),TEXT("DBPass"),NULL,m_PlatformDBParameter.szDataBasePass,CountArray(m_PlatformDBParameter.szDataBasePass));
IniData.ReadString(TEXT("PlatformDB"),TEXT("DBName"),szPlatformDB,m_PlatformDBParameter.szDataBaseName,CountArray(m_PlatformDBParameter.szDataBaseName));
return;
}
//////////////////////////////////////////////////////////////////////////////////