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:
2025-11-29 20:17:20 +09:00
parent 5d3cd64a25
commit dd97ddec92
11602 changed files with 1446576 additions and 0 deletions

View File

@@ -0,0 +1,183 @@
// DBSetting.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "DBSetting.h"
#include ".\dbsetting.h"
// CDBSetting <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
IMPLEMENT_DYNAMIC(CDBSetting, CDialog)
CDBSetting::CDBSetting(const TCHAR* szWindowTitle,
const DBSetting& dbSetting,
CWnd* pParent)
: CDialog(CDBSetting::IDD, pParent)
, m_szWindowTitle(szWindowTitle)
, m_szDBAddrLabel(_T(""))
, m_DBSetting(dbSetting)
, m_szDBNameLabel(_T(""))
{
}
CDBSetting::~CDBSetting()
{
}
void CDBSetting::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_DB_TYPE, m_cbDBType);
DDX_Control(pDX, IDC_DB_NONE, m_edDBInfo[DBSetting::DB_TYPE]);
DDX_Control(pDX, IDC_DB_ADDR, m_edDBInfo[DBSetting::DB_ADDR]);
DDX_Control(pDX, IDC_DB_NAME, m_edDBInfo[DBSetting::DB_NAME]);
DDX_Control(pDX, IDC_DB_USER, m_edDBInfo[DBSetting::DB_USER]);
DDX_Control(pDX, IDC_DB_PASS, m_edDBInfo[DBSetting::DB_PASS]);
DDX_Text(pDX, IDC_DB_ADDR_LABEL, m_szDBAddrLabel);
DDX_Text(pDX, IDC_DB_NAME_LABLE, m_szDBNameLabel);
}
BEGIN_MESSAGE_MAP(CDBSetting, CDialog)
ON_CBN_SELCHANGE(IDC_DB_TYPE, OnCbnSelchangeDbType)
END_MESSAGE_MAP()
// CDBSetting <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
BOOL CDBSetting::OnInitDialog()
{
CDialog::OnInitDialog();
SetWindowText(m_szWindowTitle);
for (int nIndex = 0; nIndex < DBSetting::MAX_DBDATA; ++nIndex)
{
// <20>ٸ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
m_edDBInfo[nIndex].SetWindowText(m_DBSetting.m_szDBData[nIndex]);
}
m_cbDBType.InsertString(0, _T("MSSQL"));
m_cbDBType.InsertString(1, _T("ODBC"));
m_cbDBType.InsertString(2, _T("ORACLE"));
CString& szDBType = m_DBSetting.m_szDBData[DBSetting::DB_TYPE];
szDBType.MakeUpper();
int nDBTypeIndex = 0;
if (0 == szDBType.Compare(_T("MSSQL"))) { nDBTypeIndex = 0; }
else if (0 == szDBType.Compare(_T("ODBC"))) { nDBTypeIndex = 1; }
else if (0 == szDBType.Compare(_T("ORACLE"))) { nDBTypeIndex = 2; }
m_cbDBType.SetCurSel(nDBTypeIndex);
OnCbnSelchangeDbType();
return TRUE; // return TRUE unless you set the focus to a control
// <20><><EFBFBD><EFBFBD>: OCX <20>Ӽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FALSE<53><45> <20><>ȯ<EFBFBD>ؾ<EFBFBD> <20>մϴ<D5B4>.
}
void CDBSetting::OnOK()
{
// TODO: <20><><EFBFBD>⿡ Ư<><C6AF>ȭ<EFBFBD><C8AD> <20>ڵ带 <20>߰<EFBFBD> <20><>/<2F>Ǵ<EFBFBD> <20>⺻ Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>մϴ<D5B4>.
UpdateData(FALSE);
for (int nIndex = 0; nIndex < DBSetting::MAX_DBDATA; ++nIndex)
{
// <20>ٸ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD>.
m_edDBInfo[nIndex].GetWindowText(m_DBSetting.m_szDBData[nIndex]);
}
int nCurSel = m_cbDBType.GetCurSel();
if (nCurSel < 0) { nCurSel = 0; }
m_cbDBType.GetLBText(nCurSel, m_DBSetting.m_szDBData[DBSetting::DB_TYPE]);
const CString& DBType = m_DBSetting.m_szDBData[DBSetting::DB_TYPE];
if (0 != DBType.Compare(_T("MSSQL")))
{
m_DBSetting.m_szDBData[DBSetting::DB_NAME] = _T("NULL");
}
CDialog::OnOK();
}
void CDBSetting::OnCbnSelchangeDbType()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
CString DBType;
m_cbDBType.GetLBText(m_cbDBType.GetCurSel(), DBType);
if (0 == DBType.Compare("MSSQL"))
{
m_edDBInfo[DBSetting::DB_NAME].EnableWindow(TRUE);
m_szDBAddrLabel.SetString(_T("DB Address"));
m_szDBNameLabel.SetString(_T("DB Name"));
}
else
{
m_edDBInfo[DBSetting::DB_NAME].EnableWindow(FALSE);
m_szDBAddrLabel.SetString(_T("DB DataSourceName"));
m_szDBNameLabel.SetString(_T(""));
}
UpdateData(FALSE);
}
void CDBSetting::CreateDBInfoString(const DBSetting& dbSetting, CString& szDBInfo)
{
const CString& DBType = dbSetting.m_szDBData[DBSetting::DB_TYPE];
if (0 == DBType.Compare(_T("MSSQL")))
{
szDBInfo.AppendFormat(
_T("- DB Type : %s\r\n")
_T("- DB Addr : %s\r\n")
_T("- DB Name : %s\r\n")
_T("- DB User : %s\r\n")
_T("- DB Pass : "),
dbSetting.m_szDBData[DBSetting::DB_TYPE],
dbSetting.m_szDBData[DBSetting::DB_ADDR],
dbSetting.m_szDBData[DBSetting::DB_NAME],
dbSetting.m_szDBData[DBSetting::DB_USER]);
}
else
{
szDBInfo.AppendFormat(
_T("- DB Type : %s\r\n")
_T("- DB DataSource : %s\r\n")
_T("- DB User : %s\r\n")
_T("- DB Pass : "),
dbSetting.m_szDBData[DBSetting::DB_TYPE],
dbSetting.m_szDBData[DBSetting::DB_ADDR],
dbSetting.m_szDBData[DBSetting::DB_USER]);
}
int nLength = dbSetting.m_szDBData[DBSetting::DB_PASS].GetLength();
while (0 < --nLength) { szDBInfo.Append("*"); }
}
bool CDBSetting::CreateDBSettingDlg(const TCHAR* szWindowTitle,
const TCHAR* szDBInfoFooter,
DBSetting& dbSetting, CString& szDBInfo)
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
CDBSetting DBSettingDlg(szWindowTitle, dbSetting);
if (IDOK == DBSettingDlg.DoModal())
{
dbSetting = DBSettingDlg.GetDBSetting();
szDBInfo.SetString(szDBInfoFooter);
CDBSetting::CreateDBInfoString(dbSetting, szDBInfo);
return true;
}
return false;
}

View File

@@ -0,0 +1,65 @@
#pragma once
#include "afxwin.h"
#include <DB/OleDB.h>
// CDBSetting <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
struct DBSetting
{
enum
{
DB_TYPE = 0,
DB_ADDR = 1,
DB_NAME = 2,
DB_USER = 3,
DB_PASS = 4,
MAX_DBDATA = 5
};
CString m_szDBData[MAX_DBDATA];
};
class CDBSetting : public CDialog
{
DECLARE_DYNAMIC(CDBSetting)
public:
CDBSetting(const TCHAR* szWindowTitle,
const DBSetting& dbSetting, CWnd* pParent = NULL); // ǥ<><C7A5> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
virtual ~CDBSetting();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
enum { IDD = IDD_DBINFO };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
DECLARE_MESSAGE_MAP()
public:
DBSetting& GetDBSetting() { return m_DBSetting; }
static void CreateDBInfoString(const DBSetting& dbSetting, CString& szDBInfo);
static bool CreateDBSettingDlg(const TCHAR* szWindowTitle,
const TCHAR* szDBInfoFooter, DBSetting& dbSetting, CString& szDBInfo);
private:
virtual BOOL OnInitDialog();
virtual void OnOK();
afx_msg void OnCbnSelchangeDbType();
CComboBox m_cbDBType;
CEdit m_edDBInfo[DBSetting::MAX_DBDATA];
DBSetting m_DBSetting;
CString m_szWindowTitle;
CString m_szDBAddrLabel;
CString m_szDBNameLabel;
};

View File

@@ -0,0 +1,77 @@
================================================================================
MFC <20><><EFBFBD>̺귯<CCBA><EAB7AF> : SeverSetupDlg <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>
================================================================================
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD> SeverSetupDlg <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>. <20><> <20><><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>α׷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E2BABB><EFBFBD><EFBFBD> MFC <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20>ۼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
<EFBFBD><EFBFBD> <20><><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD> SeverSetupDlg <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><> <20><><EFBFBD>Ͽ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><20><><EFBFBD>ԵǾ<D4B5>
<EFBFBD>ֽ<EFBFBD><EFBFBD>ϴ<EFBFBD>.
SeverSetupDlg.vcproj
<20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> VC++ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
<20><> <20><><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Visual C++ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7BFA1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD>,
<20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>Ե˴ϴ<CBB4>.
SeverSetupDlg.h
<20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>. <20><> <20><><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD> <20>ٸ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><><EFBFBD>õ<EFBFBD> Resource.h<><68> <20><><EFBFBD><EFBFBD>
Ư<><C6AF> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ԵǸ<D4B5> CSeverSetupDlgApp <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>˴ϴ<CBB4>.
SeverSetupDlg.cpp
CSeverSetupDlgApp <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
SeverSetupDlg.rc
<20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD> Microsoft Windows <20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
<20><> <20><><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD> RES <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>Ʈ<EFBFBD><C6AE> <20><> Ŀ<><C4BF><EFBFBD><EFBFBD> <20><><EFBFBD>ԵǸ<D4B5>
Microsoft Visual C++<2B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
<20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> 1042<34><32> <20><><EFBFBD><EFBFBD> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
res\SeverSetupDlg.ico
<20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
<20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SeverSetupDlg.rc<72><63> <20><><EFBFBD>Ե˴ϴ<CBB4>.
res\SeverSetupDlg.rc2
Microsoft Visual C++<2B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> <20><><EFBFBD>Ե<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
<20><><EFBFBD>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2BFA1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> <20><> <20><><EFBFBD>Ͽ<EFBFBD> <20><><EFBFBD>ԵǾ<D4B5> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
/////////////////////////////////////////////////////////////////////////////
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7BFA1><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ȭ <20><><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>.
SeverSetupDlgDlg.h, SeverSetupDlgDlg.cpp - <20><>ȭ <20><><EFBFBD><EFBFBD>
CSeverSetupDlgDlg Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>. <20><> Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD>
<20><> <20><>ȭ <20><><EFBFBD>ڿ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ǵ˴ϴ<CBB4>. <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD><C3B8><EFBFBD> SeverSetupDlg.rc<72><63>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Microsoft Visual C++<2B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
/////////////////////////////////////////////////////////////////////////////
<EFBFBD><EFBFBD>Ÿ <20><><EFBFBD><EFBFBD>
ActiveX <20><>Ʈ<EFBFBD><C6AE>
<20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD><EFBFBD><EFBFBD> ActiveX <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
/////////////////////////////////////////////////////////////////////////////
<EFBFBD><EFBFBD>Ÿ ǥ<><C7A5> <20><><EFBFBD><EFBFBD>
StdAfx.h, StdAfx.cpp
<20≯<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>(PCH) SeverSetupDlg.pch <20><> <20≯<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>
<20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> StdAfx.obj<62><6A> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
Resource.h
<20><><EFBFBD>ο<EFBFBD> <20><><EFBFBD>ҽ<EFBFBD> ID<49><44> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> ǥ<><C7A5> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
Microsoft Visual C++<2B><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>а<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD>մϴ<D5B4>.
/////////////////////////////////////////////////////////////////////////////
<EFBFBD><EFBFBD>Ÿ <20><><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7BFA1><EFBFBD><EFBFBD> "TODO:"<22><> <20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD> <20>߰<EFBFBD><DFB0>ϰų<CFB0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؾ<EFBFBD> <20>ϴ<EFBFBD>
<EFBFBD>ҽ<EFBFBD> <20>ڵ带 <20><>Ÿ<EFBFBD><C5B8><EFBFBD>ϴ<EFBFBD>.
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> DLL<4C><4C> MFC<46><43> <20><><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><20> ü<><C3BC><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ٸ<EFBFBD> <20><><EFBFBD><EFBFBD> Microsoft Visual C++ CD-ROM<4F><4D> Win\System <20><><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8><EFBFBD> <20>ִ<EFBFBD>
<EFBFBD>ش<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> MFC70XXX.DLL<4C><4C> <20><>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD> system <20>Ǵ<EFBFBD> system32 <20><><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> MFCLOC.DLL<4C><4C> <20≯<EFBFBD><CCB8><EFBFBD> <20>ٲپ<D9B2><D9BE><EFBFBD> <20>մϴ<D5B4>. "XXX"<22><> <20>ش<EFBFBD> <20><><EFBFBD><20><>Ÿ<EFBFBD><C5B8><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<EFBFBD>. <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> MFC70DEU.DLL<4C><4C><EFBFBD><EFBFBD> <20><><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD> <20><>ȯ<EFBFBD><C8AF> <20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> <20><><EFBFBD>Ե˴ϴ<CBB4>.
<EFBFBD>̷<EFBFBD> <20>۾<EFBFBD><DBBE><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20>Ϻ<EFBFBD> UI <20><><EFBFBD>Ұ<EFBFBD> <20> ü<><C3BC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ְ<EFBFBD> <20>˴ϴ<CBB4>.
/////////////////////////////////////////////////////////////////////////////

View File

@@ -0,0 +1,101 @@
#include "stdafx.h"
#include "ServerGroup.h"
#include <Utility/Setup/ServerSetup.h>
void SetGameServerNation(CComboBox& NationComboBox)
{
NationComboBox.InsertString(0, "0 = Korea");
NationComboBox.InsertString(1, "1 = Global");
}
void SetServerGroup(CComboBox& ServerGroupComboBox)
{
ServerGroupComboBox.InsertString(0, "0 = Test");
ServerGroupComboBox.InsertString(1, "1 = Ichman");
ServerGroupComboBox.InsertString(2, "2 = Asia");
ServerGroupComboBox.InsertString(3, "3 = 3");
ServerGroupComboBox.InsertString(4, "4 = 4");
ServerGroupComboBox.InsertString(5, "5 = 5");
ServerGroupComboBox.InsertString(6, "6 = 6");
ServerGroupComboBox.InsertString(7, "7 = 7");
ServerGroupComboBox.InsertString(8, "8 = 8");
ServerGroupComboBox.InsertString(9, "9 = 9 (Battle Server)");
}
void SetServerZone(CComboBox &ZoneCombo)
{
ZoneCombo.InsertString(0, "None");
ZoneCombo.InsertString(1, "Zone1 (Grand Cost)");
ZoneCombo.InsertString(2, "Zone2 (Rehan Spot)");
ZoneCombo.InsertString(3, "Zone3");
ZoneCombo.InsertString(4, "Zone4 (Sinor Island)");
ZoneCombo.InsertString(5, "Zone5 (Island of Pain)");
ZoneCombo.InsertString(6, "Zone6");
ZoneCombo.InsertString(7, "Zone7");
ZoneCombo.InsertString(8, "Zone8 (Caernarvon)");
ZoneCombo.InsertString(9, "Zone9 (Kartehena)");
ZoneCombo.InsertString(10, "Zone10");
ZoneCombo.InsertString(11, "Zone11");
ZoneCombo.InsertString(12, "Zone12 (Almighty Ground)");
ZoneCombo.InsertString(13, "Zone13");
ZoneCombo.InsertString(14, "Zone14 (Prison)");
ZoneCombo.InsertString(15, "Zone15");
ZoneCombo.InsertString(16, "Zone16 (Storn War(L))");
ZoneCombo.InsertString(17, "Zone17 (Storn War(M))");
ZoneCombo.InsertString(18, "Zone18 (Storn War(H))");
}
void SetServerChannel(CComboBox& ServerChannelComboBox)
{
ServerChannelComboBox.InsertString(0, "CH1");
ServerChannelComboBox.InsertString(1, "CH2");
ServerChannelComboBox.InsertString(2, "CH3");
ServerChannelComboBox.InsertString(3, "CH4");
ServerChannelComboBox.InsertString(4, "CH5");
}
void SetAuthType(CComboBox& AuthType)
{
AuthType.InsertString(CServerSetup::ROWGlobalAuth, "ROWGlobalAuth");
AuthType.InsertString(CServerSetup::HangameAuth, "HangameAuth");
AuthType.InsertString(CServerSetup::GamaAuth, "GamaAuth");
AuthType.InsertString(CServerSetup::YouxiLandAuth, "YouxiLandAuth");
AuthType.InsertString(CServerSetup::JapanAuth, "JapanAuth");
AuthType.InsertString(CServerSetup::GammaniaAuth, "GammaniaAuth");
}
void SetBillingType(CComboBox& BillingType)
{
BillingType.InsertString(CServerSetup::ROWGlobalBilling, "ROWGlobalBilling");
BillingType.InsertString(CServerSetup::GamaBilling, "GamaBilling");
BillingType.InsertString(CServerSetup::GamaUnitedBilling, "GamaUnitedBilling");
BillingType.InsertString(CServerSetup::YouxiLandBilling, "YouxiLandBilling");
BillingType.InsertString(CServerSetup::JapanBilling, "JapanBilling");
BillingType.InsertString(CServerSetup::GammaniaBilling, "GammaniaBilling");
}
void SetDBAgentServerType(CComboBox& TypeCb)
{
TypeCb.InsertString(0, "ROW");
TypeCb.SetItemData(0, UnifiedConst::ROW);
TypeCb.InsertString(1, "Part1");
TypeCb.SetItemData(1, UnifiedConst::Part1);
TypeCb.InsertString(2, "Part1 Unified");
TypeCb.SetItemData(2, UnifiedConst::Part1Unified);
TypeCb.InsertString(3, "Part2 Unified");
TypeCb.SetItemData(3, UnifiedConst::Part2Unified);
TypeCb.InsertString(4, "Part2 Selectable");
TypeCb.SetItemData(4, UnifiedConst::Part2Selectable);
}
unsigned short GetZoneTCPPort(unsigned long dwServerID)
{
return CServerSetup::GetGameServerTCPPort(dwServerID);
}

View File

@@ -0,0 +1,16 @@
#ifndef _INIT_SERVER_GROUP_INFO_
#define _INIT_SERVER_GROUP_INFO_
#include "afxwin.h"
void SetGameServerNation(CComboBox& NationComboBox);
void SetServerGroup(CComboBox& ServerGroupComboBox);
void SetServerChannel(CComboBox& ServerChannelComboBox);
void SetAuthType(CComboBox& AuthType);
void SetBillingType(CComboBox& BillingType);
void SetServerZone(CComboBox& ZoneCombo);
void SetDBAgentServerType(CComboBox& TypeCb);
unsigned short GetZoneTCPPort(unsigned long dwServerID);
#endif

View File

@@ -0,0 +1,97 @@
// SetupPage1.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "SetupPage1.h"
#include <Utility/Setup/ServerSetup.h>
// CSetupPage1 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
IMPLEMENT_DYNAMIC(CSetupPage1, CPropertyPage)
CSetupPage1::CSetupPage1()
: CPropertyPage(CSetupPage1::IDD)
, m_bEnabled(FALSE)
, m_szLoginServerID(_T(""))
, m_szLoginServerListenLauncherPort(_T(""))
, m_szLoginServerListenDBAgentPort(_T(""))
, m_bLoginPingCheck(FALSE)
, m_bLoginAloneMode(FALSE)
, m_dwLeastPatchVer(0)
, m_szPatchAddress(_T(""))
{
}
CSetupPage1::~CSetupPage1()
{
}
void CSetupPage1::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
DDX_Text(pDX, IDC_LOGIN_SERVER_ID, m_szLoginServerID);
DDX_Text(pDX, IDC_LOGIN_LISTEN_LAUNCHER_PORT, m_szLoginServerListenLauncherPort);
DDX_Text(pDX, IDC_LOGIN_LISTEN_DBAGENT_PORT, m_szLoginServerListenDBAgentPort);
DDX_Check(pDX, IDC_LOGIN_PING_CHECK, m_bLoginPingCheck);
DDX_Check(pDX, IDC_LOGIN_ALONE_MODE, m_bLoginAloneMode);
DDX_Text(pDX, IDC_LOGIN_PATCH_VER, m_dwLeastPatchVer);
DDX_Text(pDX, IDC_LOGIN_PATCH_ADDR, m_szPatchAddress);
}
BEGIN_MESSAGE_MAP(CSetupPage1, CPropertyPage)
END_MESSAGE_MAP()
BOOL CSetupPage1::OnInitDialog()
{
CPropertyPage::OnInitDialog();
m_szLoginServerListenLauncherPort.Format(_T("%d"), CServerSetup::LoginServerLauncherListen);
m_szLoginServerListenDBAgentPort.Format(_T("%d"), CServerSetup::LoginServerDBAgentServerListen);
CString szPingCheck;
CString szAloneMode;
CString szLeastPatchVer;
ReadStringFromReg(g_szSetupFileName, _T("LoginServer"), _T("ServerID"), m_szLoginServerID);
ReadStringFromReg(g_szSetupFileName, _T("LoginServer"), _T("PingCheck"), szPingCheck);
ReadStringFromReg(g_szSetupFileName, _T("LoginServer"), _T("AloneMode"), szAloneMode);
ReadStringFromReg(g_szSetupFileName, _T("LoginServer"), _T("LeastPatchVer"), szLeastPatchVer);
ReadStringFromReg(g_szSetupFileName, _T("LoginServer"), _T("PatchAddr"), m_szPatchAddress);
m_bLoginPingCheck = (1 == atol(szPingCheck));
m_bLoginAloneMode = (1 == atol(szAloneMode));
m_dwLeastPatchVer = atol(szLeastPatchVer);
// <20>α<EFBFBD><CEB1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ID<49><44> 0<>̴<EFBFBD>.
m_szLoginServerID.SetString(_T("0"));
return TRUE; // return TRUE unless you set the focus to a control
// <20><><EFBFBD><EFBFBD>: OCX <20>Ӽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FALSE<53><45> <20><>ȯ<EFBFBD>ؾ<EFBFBD> <20>մϴ<D5B4>.
}
void CSetupPage1::Save(void)
{
if(m_bEnabled)
{
UpdateData(TRUE);
CString szLeastPatchVer;
szLeastPatchVer.Format(_T("%d"), m_dwLeastPatchVer);
WriteStringToReg(g_szSetupFileName, _T("LoginServer"), _T("ServerID"), m_szLoginServerID);
WriteStringToReg(g_szSetupFileName, _T("LoginServer"), _T("PingCheck"), BOOLToString(m_bLoginPingCheck));
WriteStringToReg(g_szSetupFileName, _T("LoginServer"), _T("AloneMode"), BOOLToString(m_bLoginAloneMode));
WriteStringToReg(g_szSetupFileName, _T("LoginServer"), _T("LeastPatchVer"), szLeastPatchVer);
WriteStringToReg(g_szSetupFileName, _T("LoginServer"), _T("PatchAddr"), m_szPatchAddress);
}
}
BOOL CSetupPage1::OnSetActive()
{
// TODO: <20><><EFBFBD>⿡ Ư<><C6AF>ȭ<EFBFBD><C8AD> <20>ڵ带 <20>߰<EFBFBD> <20><>/<2F>Ǵ<EFBFBD> <20>⺻ Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>մϴ<D5B4>.
UpdateData(FALSE);
m_bEnabled = TRUE;
return CPropertyPage::OnSetActive();
}

View File

@@ -0,0 +1,41 @@
#pragma once
// CSetupPage1 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
class CSetupPage1 : public CPropertyPage
{
DECLARE_DYNAMIC(CSetupPage1)
public:
CSetupPage1();
virtual ~CSetupPage1();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
enum { IDD = IDD_PAGE_1 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
DECLARE_MESSAGE_MAP()
public:
void Save(void);
private:
virtual BOOL OnInitDialog();
virtual BOOL OnSetActive();
BOOL m_bEnabled;
BOOL m_bLoginPingCheck;
BOOL m_bLoginAloneMode;
DWORD m_dwLeastPatchVer;
CString m_szLoginServerListenLauncherPort;
CString m_szLoginServerListenDBAgentPort;
CString m_szLoginServerID;
CString m_szPatchAddress;
};

View File

@@ -0,0 +1,244 @@
// SetupPage2.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "ServerGroup.h"
#include "SetupPage2.h"
#include <Utility/Setup/ServerSetup.h>
#include <Network/Packet/PacketStruct/ServerInfo.h>
#include ".\setuppage2.h"
// CSetupPage2 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
IMPLEMENT_DYNAMIC(CSetupPage2, CPropertyPage)
CSetupPage2::CSetupPage2()
: CPropertyPage(CSetupPage2::IDD)
, m_bEnabled(FALSE)
, m_szAuthServerID(_T(""))
, m_szAuthServerClientListenPort(_T(""))
, m_bPingCheck(FALSE)
, m_bKoreanCheck(FALSE)
, m_bTestGroup(FALSE)
, m_bSupressCharCreate(FALSE)
, m_bSupressCharDelete(FALSE)
, m_bBattleServer(FALSE)
, m_szAuthDBInfo(_T(""))
, m_szAdminToolDBInfo(_T(""))
, m_szDBAgentAddress(_T(""))
{
}
CSetupPage2::~CSetupPage2()
{
}
void CSetupPage2::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
DDX_Text(pDX, IDC_AUTH_SERVER_ID, m_szAuthServerID);
DDX_Text(pDX, IDC_AUTH_CLIENT_LISTEN_PORT, m_szAuthServerClientListenPort);
DDX_Control(pDX, IDC_AUTH_SERVER_TYPE, m_cbAuthType);
DDX_Control(pDX, IDC_AUTH_SERVER_GROUP, m_cbAuthGroup);
DDX_Check(pDX, IDC_AUTH_PING_CHECK, m_bPingCheck);
DDX_Check(pDX, IDC_AUTH_HAN_CHECK, m_bKoreanCheck);
DDX_Check(pDX, IDC_AUTH_TEST_GROUP, m_bTestGroup);
DDX_Check(pDX, IDC_AUTH_SUPRESS_CHARCREATE, m_bSupressCharCreate);
DDX_Check(pDX, IDC_AUTH_SUPRESS_CHARDELETE, m_bSupressCharDelete);
DDX_Check(pDX, IDC_AUTH_BATTLESERVER, m_bBattleServer);
DDX_Text(pDX, IDC_AUTH_EDT_DBSETTING, m_szAuthDBInfo);
DDX_Text(pDX, IDC_AUTH_BLOCK_EDT_DBSETTING, m_szAdminToolDBInfo);
DDX_Text(pDX, IDC_AUTH_DBAGENT_ADDR, m_szDBAgentAddress);
}
BEGIN_MESSAGE_MAP(CSetupPage2, CPropertyPage)
ON_BN_CLICKED(IDC_AUTH_BTN_DBSETTING, OnBnClickedAuthBtnDbsetting)
ON_BN_CLICKED(IDC_AUTH_BLOCK_BTN_DBSETTING, OnBnClickedAuthBlockBtnDbsetting)
END_MESSAGE_MAP()
// CSetupPage2 <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
BOOL CSetupPage2::OnInitDialog()
{
CPropertyPage::OnInitDialog();
m_szAuthServerClientListenPort.Format(_T("%d"), CServerSetup::AuthServerClientListen);
SetAuthType(m_cbAuthType);
SetServerGroup(m_cbAuthGroup);
m_cbAuthGroup.SetCurSel(0);
CString szAuthType;
CString szPingCheck;
CString szKoreanLangCheck;
CString szBattleServerAuth;
CString szTestGroupAuth;
CString szSupressCharCreate;
CString szSupressCharDelete;
// <20><20><><EFBFBD><EFBFBD>
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("ServerID"), m_szAuthServerID);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AuthType"), szAuthType);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("DBAgentAddr"), m_szDBAgentAddress);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("PingCheck"), szPingCheck);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("KoreanLangCheck"), szKoreanLangCheck);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("BattleServerAuth"), szBattleServerAuth);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("TestGroupAuth"), szTestGroupAuth);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("SupressCharCreate"), szSupressCharCreate);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("SupressCharDelete"), szSupressCharDelete);
// <20><><EFBFBD><EFBFBD> DB<44><42><EFBFBD><EFBFBD>
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBType"), m_AuthDB.m_szDBData[DBSetting::DB_TYPE]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBAddr"), m_AuthDB.m_szDBData[DBSetting::DB_ADDR]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBName"), m_AuthDB.m_szDBData[DBSetting::DB_NAME]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBUser"), m_AuthDB.m_szDBData[DBSetting::DB_USER]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBPass"), m_AuthDB.m_szDBData[DBSetting::DB_PASS]);
// <20><EFBFBD><EEBFB5> DB<44><42><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBType"), m_AdminToolDB.m_szDBData[DBSetting::DB_TYPE]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBAddr"), m_AdminToolDB.m_szDBData[DBSetting::DB_ADDR]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBName"), m_AdminToolDB.m_szDBData[DBSetting::DB_NAME]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBUser"), m_AdminToolDB.m_szDBData[DBSetting::DB_USER]);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBPass"), m_AdminToolDB.m_szDBData[DBSetting::DB_PASS]);
SERVER_ID serverID;
serverID.dwID = atol(m_szAuthServerID);
serverID.sID.ID = 0;
serverID.sID.Type = CServerSetup::AuthServer;
serverID.sID.Channel = 0;
m_szAuthServerID.Format("0x%08x", serverID.dwID);
m_cbAuthType.SetCurSel(atol(szAuthType));
m_cbAuthGroup.SetCurSel(int(serverID.sID.Group));
m_bPingCheck = (1 == atol(szPingCheck));
m_bKoreanCheck = (1 == atol(szKoreanLangCheck));
m_bTestGroup = (1 == atol(szTestGroupAuth));
m_bSupressCharCreate = (1 == atol(szSupressCharCreate));
m_bSupressCharDelete = (1 == atol(szSupressCharDelete));
m_bBattleServer = (1 == atol(szBattleServerAuth));
CDBSetting::CreateDBInfoString(m_AuthDB, m_szAuthDBInfo);
CDBSetting::CreateDBInfoString(m_AdminToolDB, m_szAdminToolDBInfo);
UpdateData(FALSE);
UpdateServerID();
return TRUE; // return TRUE unless you set the focus to a control
// <20><><EFBFBD><EFBFBD>: OCX <20>Ӽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FALSE<53><45> <20><>ȯ<EFBFBD>ؾ<EFBFBD> <20>մϴ<D5B4>.
}
void CSetupPage2::Save(void)
{
if(m_bEnabled)
{
UpdateData(TRUE);
CString szAuthServerID;
CString szAuthType;
CString szPingCheck;
CString szKoreanLangCheck;
CString szBattleServerAuth;
CString szTestGroupAuth;
CString szSupressCharCreate;
CString szSupressCharDelete;
SERVER_ID serverID;
serverID.sID.ID = 0;
serverID.sID.Type = CServerSetup::AuthServer;
serverID.sID.Group = m_cbAuthGroup.GetCurSel();
serverID.sID.Channel = 0;
szAuthServerID.Format(_T("%d"), serverID.dwID);
szAuthType.Format(_T("%d"), m_cbAuthType.GetCurSel());
szPingCheck.SetString(BOOLToString(m_bPingCheck));
szKoreanLangCheck.SetString(BOOLToString(m_bKoreanCheck));
szBattleServerAuth.SetString(BOOLToString(m_bBattleServer));
szTestGroupAuth.SetString(BOOLToString(m_bTestGroup));
szSupressCharCreate.SetString(BOOLToString(m_bSupressCharCreate));
szSupressCharDelete.SetString(BOOLToString(m_bSupressCharDelete));
// <20><20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("ServerID"), szAuthServerID);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AuthType"), szAuthType);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("DBAgentAddr"), m_szDBAgentAddress);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("PingCheck"), szPingCheck);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("KoreanLangCheck"), szKoreanLangCheck);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("BattleServerAuth"), szBattleServerAuth);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("TestGroupAuth"), szTestGroupAuth);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("SupressCharCreate"), szSupressCharCreate);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("SupressCharDelete"), szSupressCharDelete);
// <20><><EFBFBD><EFBFBD> DB<44><42><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBType"), m_AuthDB.m_szDBData[DBSetting::DB_TYPE]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBAddr"), m_AuthDB.m_szDBData[DBSetting::DB_ADDR]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBName"), m_AuthDB.m_szDBData[DBSetting::DB_NAME]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBUser"), m_AuthDB.m_szDBData[DBSetting::DB_USER]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AuthDBPass"), m_AuthDB.m_szDBData[DBSetting::DB_PASS]);
// <20><EFBFBD><EEBFB5> DB<44><42><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBType"), m_AdminToolDB.m_szDBData[DBSetting::DB_TYPE]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBAddr"), m_AdminToolDB.m_szDBData[DBSetting::DB_ADDR]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBName"), m_AdminToolDB.m_szDBData[DBSetting::DB_NAME]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBUser"), m_AdminToolDB.m_szDBData[DBSetting::DB_USER]);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("AdminToolDBPass"), m_AdminToolDB.m_szDBData[DBSetting::DB_PASS]);
}
}
BOOL CSetupPage2::OnSetActive()
{
// TODO: <20><><EFBFBD>⿡ Ư<><C6AF>ȭ<EFBFBD><C8AD> <20>ڵ带 <20>߰<EFBFBD> <20><>/<2F>Ǵ<EFBFBD> <20>⺻ Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>մϴ<D5B4>.
UpdateData(FALSE);
m_bEnabled = TRUE;
return CPropertyPage::OnSetActive();
}
void CSetupPage2::UpdateServerID()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateData(TRUE);
SERVER_ID serverID;
serverID.sID.ID = 0;
serverID.sID.Type = CServerSetup::AuthServer;
serverID.sID.Group = m_cbAuthGroup.GetCurSel();
serverID.sID.Channel = 0;
m_szAuthServerID.Format("0x%08x", serverID.dwID);
UpdateData(FALSE);
}
void CSetupPage2::OnBnClickedAuthBtnDbsetting()
{
UpdateData(TRUE);
if (CDBSetting::CreateDBSettingDlg(
_T("Auth DBSetting"),
_T("* Auth DBSetting \r\n"),
m_AuthDB, m_szAuthDBInfo))
{
UpdateData(FALSE);
}
}
void CSetupPage2::OnBnClickedAuthBlockBtnDbsetting()
{
UpdateData(TRUE);
if (CDBSetting::CreateDBSettingDlg(
_T("AdminTool DBSetting (for block user)"),
_T("* AdminTool DBSetting (for block user) \r\n"),
m_AdminToolDB, m_szAdminToolDBInfo))
{
UpdateData(FALSE);
}
}

View File

@@ -0,0 +1,57 @@
#pragma once
#include "afxwin.h"
#include "afxcmn.h"
#include "DBSetting.h"
// CSetupPage2 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
class CSetupPage2 : public CPropertyPage
{
DECLARE_DYNAMIC(CSetupPage2)
public:
CSetupPage2();
virtual ~CSetupPage2();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
enum { IDD = IDD_PAGE_2 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
DECLARE_MESSAGE_MAP()
public:
virtual BOOL OnInitDialog();
virtual BOOL OnSetActive();
void UpdateServerID();
void Save(void);
private:
afx_msg void OnBnClickedAuthBtnDbsetting();
afx_msg void OnBnClickedAuthBlockBtnDbsetting();
BOOL m_bEnabled;
BOOL m_bPingCheck;
BOOL m_bKoreanCheck;
BOOL m_bTestGroup;
BOOL m_bSupressCharCreate;
BOOL m_bSupressCharDelete;
BOOL m_bBattleServer;
CComboBox m_cbAuthType;
CComboBox m_cbAuthGroup;
CString m_szAuthServerID;
CString m_szAuthServerClientListenPort;
CString m_szDBAgentAddress;
CString m_szAuthDBInfo;
CString m_szAdminToolDBInfo;
DBSetting m_AuthDB;
DBSetting m_AdminToolDB;
};

View File

@@ -0,0 +1,453 @@
// SetupPage3.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "SetupPage3.h"
#include "ServerGroup.h"
#include <Utility/Setup/ServerSetup.h>
#include <Network/Packet/PacketStruct/ServerInfo.h>
#include ".\setuppage3.h"
// CSetupPage3 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
IMPLEMENT_DYNAMIC(CSetupPage3, CPropertyPage)
CSetupPage3::CSetupPage3()
: CPropertyPage(CSetupPage3::IDD)
, m_bPingCheck(FALSE)
, m_bHackCheck(FALSE)
, m_bLotteryEvent(FALSE)
, m_bLevelUpEvent(FALSE)
, m_bDeathPenaltyEvent(FALSE)
, m_ExpRate(_T(""))
, m_DropRate(_T(""))
, m_EquipCorrRate(_T(""))
, m_ServerID(_T(""))
, m_ServerIDHex(_T(""))
, m_bEnabled(FALSE)
, m_DBAgentServerAddress(_T(""))
, m_LogServerAddress(_T(""))
, m_ChatServerAddress(_T(""))
, m_BattleLimit(_T(""))
, m_BattleLimitPer(_T("100"))
, m_strZoneCount(_T("0"))
, m_bBattleServer(FALSE)
, m_Fame(_T(""))
, m_Refine(_T(""))
, m_Mileage(_T(""))
, m_strTCPPort(_T(""))
, m_strP1UDPListen(_T(""))
{
}
CSetupPage3::~CSetupPage3()
{
}
void CSetupPage3::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
DDX_Check(pDX, IDC_PINGCHECK, m_bPingCheck);
DDX_Check(pDX, IDC_HACKCHECK, m_bHackCheck);
DDX_Check(pDX, IDC_LOTTERY, m_bLotteryEvent);
DDX_Check(pDX, IDC_LEVELUP, m_bLevelUpEvent);
DDX_Check(pDX, IDC_DEATHPENALTY, m_bDeathPenaltyEvent);
DDX_Text(pDX, IDC_AGENTADDR, m_DBAgentServerAddress);
DDX_Text(pDX, IDC_EXP, m_ExpRate);
DDX_Text(pDX, IDC_DROP, m_DropRate);
DDX_Control(pDX, IDC_ZONE, m_Zone);
DDX_Control(pDX, IDC_CHANNEL, m_Channel);
DDX_Text(pDX, IDC_SERVERID, m_ServerID);
DDX_Text(pDX, IDC_SERVERID_HEX, m_ServerIDHex);
DDX_Control(pDX, IDC_GROUP, m_Group);
DDX_Text(pDX, IDC_LOGSERVERADDR, m_LogServerAddress);
DDX_Text(pDX, IDC_CHATSERVERADDR, m_ChatServerAddress);
DDX_Text(pDX, IDC_BATTLELIMIT, m_BattleLimit);
DDX_Text(pDX, IDC_BATTLELIMITPER, m_BattleLimitPer);
DDX_Text(pDX, IDC_ZONE_TCPPORT, m_strTCPPort);
DDX_Control(pDX, IDC_ZONE_SELECTION, m_ctrlZoneCountCb);
DDX_Text(pDX, IDC_ZONE_COUNT, m_strZoneCount);
DDX_Control(pDX, IDC_SAVE_ZONE_SETING, m_ctrlSaveZoneSetting);
DDX_Check(pDX, IDC_GAMEBATTLESERVER, m_bBattleServer);
DDX_Control(pDX, IDC_NATION_SELECTION, m_Nation);
DDX_Text(pDX, IDC_FAME, m_Fame);
DDX_Text(pDX, IDC_REFINE, m_Refine);
DDX_Text(pDX, IDC_MILEAGE, m_Mileage);
DDX_Text(pDX, IDC_ZONE_UDPPORT, m_strP1UDPListen);
DDX_Text(pDX, IDC_EQUIPCORR, m_EquipCorrRate);
}
BEGIN_MESSAGE_MAP(CSetupPage3, CPropertyPage)
ON_CBN_SELCHANGE(IDC_GROUP, OnCbnSelchangeGroup)
ON_CBN_SELCHANGE(IDC_ZONE, OnCbnSelchangeZone)
ON_CBN_SELCHANGE(IDC_CHANNEL, OnCbnSelchangeChannel)
ON_BN_CLICKED(IDC_ZONE_ADD, OnBnClickedZoneAdd)
ON_BN_CLICKED(IDC_ZONE_DEL, OnBnClickedZoneDel)
ON_CBN_SELCHANGE(IDC_ZONE_SELECTION, OnCbnSelchangeZoneSelection)
ON_BN_CLICKED(IDC_SAVE_ZONE_SETING, OnBnClickedSaveZoneSetting)
END_MESSAGE_MAP()
// CSetupPage3 <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
BOOL CSetupPage3::OnInitDialog()
{
CPropertyPage::OnInitDialog();
const int MAX_BUFFER = 260;
char ZoneCount[MAX_BUFFER] = "";
char strInputedZoneSetupNum[MAX_BUFFER] = "";
char strGameServerNation[MAX_BUFFER] = "";
char strBattleServer[MAX_BUFFER] = "";
ReadStringFromReg(g_szSetupFileName, "Zone_ETC", "ZoneCount", ZoneCount, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, "Zone_ETC", "InputedZoneSetupNum", strInputedZoneSetupNum, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, "Zone_ETC", "GameServerNation", strGameServerNation, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, "Zone_ETC", "BattleServerGroup", strBattleServer, MAX_BUFFER);
m_strZoneCount = ZoneCount;
m_bBattleServer = (0 != atoi(strBattleServer));
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>޺<EFBFBD> <20><><EFBFBD><EFBFBD>
SetGameServerNation(m_Nation);
SetServerGroup(m_Group);
SetServerZone(m_Zone);
SetServerChannel(m_Channel);
SetZoneCountCombo(m_ctrlZoneCountCb);
m_Nation.SetCurSel(atoi(strGameServerNation));
// <20><><EFBFBD><EFBFBD> <20>Ǿ<EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD> <20>ִٸ<D6B4> ù<><C3B9>° <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ
if (0 == atoi(ZoneCount))
{
m_ctrlZoneCountCb.EnableWindow(false);
m_ctrlSaveZoneSetting.EnableWindow(false);
}
else
{
m_ctrlZoneCountCb.SetCurSel(0);
SetGameServerPage(1);
}
return TRUE;
}
void CSetupPage3::SetGameServerPage(unsigned int nZoneCount)
{
const int MAX_BUFFER = 260;
char szSection[MAX_BUFFER], szSetCount[MAX_BUFFER] = "";
for(int nZone = 1; nZone < m_Zone.GetCount(); ++nZone)
{
for(int nCh = 0; nCh < m_Channel.GetCount(); ++nCh)
{
_snprintf(szSection, MAX_PATH, "Zone_%02d%02d", nZone, nCh);
ReadStringFromReg(g_szSetupFileName, szSection, "SetCount", szSetCount, MAX_BUFFER);
if ((nZoneCount != 0) && (nZoneCount == atoi(szSetCount)))
{
SetZoneSetupInfo(szSection);
return;
}
}
}
SetZoneSetupInfo("?????");
}
void CSetupPage3::SetZoneSetupInfo(char* szSection)
{
// <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>б<EFBFBD>
const int MAX_BUFFER = 260;
char szServerID[MAX_BUFFER] = "";
char szPingCheck[MAX_BUFFER] = "";
char szSpeedHackCheck[MAX_BUFFER] = "";
char szLotteryEvent[MAX_BUFFER] = "";
char szLevelUpEvent[MAX_BUFFER] = "";
char szDeathPenaltyEvent[MAX_BUFFER] = "";
ReadStringFromReg(g_szSetupFileName, szSection, "ServerID", szServerID, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, szSection, "PingCheck", szPingCheck, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, szSection, "SpeedHackCheck", szSpeedHackCheck, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, szSection, "LotteryEvent", szLotteryEvent, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, szSection, "LevelUpEvent", szLevelUpEvent, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, szSection, "DeathPenaltyEvent", szDeathPenaltyEvent, MAX_BUFFER);
ReadStringFromReg(g_szSetupFileName, szSection, "DBAgentServerAddr", m_DBAgentServerAddress);
ReadStringFromReg(g_szSetupFileName, szSection, "LogServerAddr", m_LogServerAddress);
ReadStringFromReg(g_szSetupFileName, szSection, "ChatServerAddr", m_ChatServerAddress);
ReadStringFromReg(g_szSetupFileName, szSection, "ExpRate", m_ExpRate);
ReadStringFromReg(g_szSetupFileName, szSection, "DropRate", m_DropRate);
ReadStringFromReg(g_szSetupFileName, szSection, "EquipCorrRate", m_EquipCorrRate);
ReadStringFromReg(g_szSetupFileName, szSection, "Fame", m_Fame);
ReadStringFromReg(g_szSetupFileName, szSection, "Refine", m_Refine);
ReadStringFromReg(g_szSetupFileName, szSection, "Mileage", m_Mileage);
ReadStringFromReg(g_szSetupFileName, szSection, "BattleUserLimit", m_BattleLimit);
ReadStringFromReg(g_szSetupFileName, szSection, "BattleUserLimitPer", m_BattleLimitPer);
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
m_ServerID = szServerID;
m_bPingCheck = atoi(szPingCheck);
m_bHackCheck = atoi(szSpeedHackCheck);
m_bLotteryEvent = atoi(szLotteryEvent);
m_bLevelUpEvent = atoi(szLevelUpEvent);
m_bDeathPenaltyEvent= atoi(szDeathPenaltyEvent);
SERVER_ID serverID = {0,};
serverID.dwID = atoi(szServerID);
serverID.sID.Type = CServerSetup::GameServer;
m_ServerID.Format("%d", serverID.dwID);
m_ServerIDHex.Format("0x%08X", serverID.dwID);
m_Group.SetCurSel(serverID.GetGroup());
m_Zone.SetCurSel(serverID.GetZone());
m_Channel.SetCurSel(serverID.GetChannel());
m_strTCPPort.Format("%d", GetZoneTCPPort(serverID.dwID));
m_strP1UDPListen.Format("%d", CServerSetup::GetP1GameServerUDPPort(serverID.dwID));
switch(m_Zone.GetCurSel())
{
case SERVER_ID::ZONE1:
case SERVER_ID::ZONE2:
case SERVER_ID::ZONE4:
case SERVER_ID::ZONE5:
case SERVER_ID::ZONE12:
case SERVER_ID::BATTLE_SERVER:
m_Channel.SetCurSel(0);
m_Channel.EnableWindow(true);
break;
default:
m_Channel.SetCurSel(0);
m_Channel.EnableWindow(false);
break;
}
UpdateData(false);
}
// nSaveType : true - <20><> <20><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
// false - <20><><EFBFBD><EFBFBD> <20><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
void CSetupPage3::Save(bool bSaveType)
{
if (!m_bEnabled)
{
return;
}
UpdateData(true);
// <20><> <20><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>׸<EFBFBD> (<28><><EFBFBD><EFBFBD>: Zone_ETC) --------------------------------------------------------------
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
char szGameServerNation[MAX_PATH] = "";
_snprintf(szGameServerNation, MAX_PATH, "%d", m_Nation.GetCurSel());
WriteStringToReg(g_szSetupFileName, "Zone_ETC", "GameServerNation", szGameServerNation);
// <20><>Ʋ <20><><EFBFBD>ѱ<EFBFBD><D1B1><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, "Zone_ETC", "BattleServerGroup", BOOLToString(m_bBattleServer));
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, "Zone_ETC", "ZoneCount", m_strZoneCount );
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD> <20><><EFBFBD><EFBFBD> <20>׸<EFBFBD> (<28><><EFBFBD><EFBFBD>: Zone_%02d%02d) ------------------------------------------------------------
if (!bSaveType)
{
if ((m_Zone.GetCurSel() == -1)
|| (m_Channel.GetCurSel() == -1)
|| (m_ctrlZoneCountCb.GetCurSel() == -1))
{
MessageBox("Invalid Selection;");
return;
}
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SetCount<6E><74> <20><><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7>Ѵٸ<D1B4> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'not use' <20><> <20><><EFBFBD><EFBFBD>
const int MAX_BUFFER = 260;
char szTemp[MAX_BUFFER], szSetCount[MAX_BUFFER] = "";
for(int nZone = 1; nZone < m_Zone.GetCount(); ++nZone)
{
for(int nCh = 0; nCh < m_Channel.GetCount(); ++nCh)
{
_snprintf(szTemp, MAX_PATH, "Zone_%02d%02d", nZone, nCh);
ReadStringFromReg(g_szSetupFileName, szTemp, "SetCount", szSetCount, MAX_BUFFER);
if (atoi(szSetCount) == (m_ctrlZoneCountCb.GetCurSel() + 1))
{
WriteStringToReg(g_szSetupFileName, szTemp, "SetCount", "not use");
}
}
}
char szSection[MAX_PATH] = "";
_snprintf(szSection, MAX_PATH, "Zone_%02d%02d", m_Zone.GetCurSel(), m_Channel.GetCurSel());
WriteStringToReg(g_szSetupFileName, szSection, "ServerID", m_ServerID);
WriteStringToReg(g_szSetupFileName, szSection, "PingCheck", BOOLToString(m_bPingCheck));
WriteStringToReg(g_szSetupFileName, szSection, "SpeedHackCheck", BOOLToString(m_bHackCheck));
WriteStringToReg(g_szSetupFileName, szSection, "LotteryEvent", BOOLToString(m_bLotteryEvent));
WriteStringToReg(g_szSetupFileName, szSection, "LevelUpEvent", BOOLToString(m_bLevelUpEvent));
WriteStringToReg(g_szSetupFileName, szSection, "DeathPenaltyEvent", BOOLToString(m_bDeathPenaltyEvent));
WriteStringToReg(g_szSetupFileName, szSection, "DBAgentServerAddr", m_DBAgentServerAddress);
WriteStringToReg(g_szSetupFileName, szSection, "LogServerAddr", m_LogServerAddress);
WriteStringToReg(g_szSetupFileName, szSection, "ChatServerAddr", m_ChatServerAddress);
WriteStringToReg(g_szSetupFileName, szSection, "ExpRate", m_ExpRate);
WriteStringToReg(g_szSetupFileName, szSection, "DropRate", m_DropRate);
WriteStringToReg(g_szSetupFileName, szSection, "EquipCorrRate", m_EquipCorrRate);
WriteStringToReg(g_szSetupFileName, szSection, "Fame", m_Fame);
WriteStringToReg(g_szSetupFileName, szSection, "Refine", m_Refine);
WriteStringToReg(g_szSetupFileName, szSection, "Mileage", m_Mileage);
WriteStringToReg(g_szSetupFileName, szSection, "BattleUserLimit", m_BattleLimit);
WriteStringToReg(g_szSetupFileName, szSection, "BattleUserLimitPer", m_BattleLimitPer);
// SetCount: <20><><EFBFBD><EFBFBD>°<EFBFBD><C2B0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
_snprintf(szSetCount, MAX_PATH, "%d", m_ctrlZoneCountCb.GetCurSel() + 1);
WriteStringToReg(g_szSetupFileName, szSection, "SetCount", szSetCount);
}
}
BOOL CSetupPage3::OnSetActive()
{
UpdateData(FALSE);
m_bEnabled = TRUE;
return CPropertyPage::OnSetActive();
}
void CSetupPage3::OnCbnSelchangeGroup()
{
UpdateData(TRUE);
SERVER_ID serverID = {0,};
serverID.sID.Type = CServerSetup::GameServer;
serverID.sID.Group = m_Group.GetCurSel();
serverID.sID.ID = m_Zone.GetCurSel();
serverID.sID.Channel = m_Channel.GetCurSel();
m_ServerID.Format("%d", serverID.dwID);
m_ServerIDHex.Format("0x%08X", serverID.dwID);
UpdateData(FALSE);
}
void CSetupPage3::OnCbnSelchangeZone()
{
SERVER_ID serverID = {0,};
serverID.sID.Type = CServerSetup::GameServer;
serverID.sID.Group = m_Group.GetCurSel();
serverID.sID.ID = m_Zone.GetCurSel();
serverID.sID.Channel = m_Channel.GetCurSel();
m_ServerID.Format("%d", serverID.dwID);
m_ServerIDHex.Format("0x%08X", serverID.dwID);
m_strTCPPort.Format("%d", GetZoneTCPPort(serverID.dwID));
m_strP1UDPListen.Format("%d", CServerSetup::GetP1GameServerUDPPort(serverID.dwID));
switch(m_Zone.GetCurSel())
{
case SERVER_ID::ZONE1:
case SERVER_ID::ZONE2:
case SERVER_ID::ZONE4:
case SERVER_ID::ZONE5:
case SERVER_ID::ZONE12:
case SERVER_ID::BATTLE_SERVER:
m_Channel.SetCurSel(0);
m_Channel.EnableWindow(true);
break;
default:
m_Channel.SetCurSel(0);
m_Channel.EnableWindow(false);
break;
}
UpdateData(false);
}
void CSetupPage3::OnCbnSelchangeChannel()
{
UpdateData(true);
SERVER_ID serverID = {0,};
serverID.sID.Type = CServerSetup::GameServer;
serverID.sID.Group = m_Group.GetCurSel();
serverID.sID.ID = m_Zone.GetCurSel();
serverID.sID.Channel = m_Channel.GetCurSel();
m_ServerID.Format ("%d", serverID.dwID);
m_ServerIDHex.Format("0x%08X", serverID.dwID);
m_strTCPPort.Format( "%d", GetZoneTCPPort(serverID.dwID));
m_strP1UDPListen.Format("%d", CServerSetup::GetP1GameServerUDPPort(serverID.dwID));
UpdateData(false);
}
void CSetupPage3::OnBnClickedZoneAdd()
{
if (atoi(m_strZoneCount) == 0) // <09><> ī<><C4AB>Ʈ<EFBFBD><C6AE> 1<>̵Ǵ<CCB5> <20><><EFBFBD><EFBFBD> Ȱ<><C8B0>ȭ <20><> <20>׸<EFBFBD>
{
m_ctrlZoneCountCb.EnableWindow(true);
m_ctrlSaveZoneSetting.EnableWindow(true);
}
// <09><> ī<><C4AB>Ʈ 1 <20><><EFBFBD><EFBFBD>
int nCount = atoi(m_strZoneCount);
nCount++;
m_strZoneCount.Format("%d", nCount);
UpdateData(false);
SetZoneCountCombo(m_ctrlZoneCountCb);
}
void CSetupPage3::OnBnClickedZoneDel()
{
if (atoi(m_strZoneCount) == 1) // <09><> ī<><C4AB>Ʈ<EFBFBD><C6AE> 0<>̵Ǵ<CCB5> <20><><EFBFBD><EFBFBD> <20><>Ȱ<EFBFBD><C8B0>ȭ <20><>ų <20>׸<EFBFBD>
{
m_ctrlZoneCountCb.EnableWindow(false);
m_ctrlSaveZoneSetting.EnableWindow(false);
}
// <09><> ī<><C4AB>Ʈ 1 <20><><EFBFBD><EFBFBD>
int nCount = atoi(m_strZoneCount);
if (nCount > 0) nCount--;
m_strZoneCount.Format("%d", nCount);
UpdateData(false);
SetZoneCountCombo(m_ctrlZoneCountCb);
}
void CSetupPage3::SetZoneCountCombo(CComboBox& ZoneCountCb)
{
CString strComboString;
int nDeleteCount = ZoneCountCb.GetCount();
int nMaxZoneConut = atoi(m_strZoneCount);
ZoneCountCb.ResetContent();
for(int count = 1; count <= nMaxZoneConut; count++) // <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>޺<EFBFBD> <20>ٽ<EFBFBD> <20><><EFBFBD><EFBFBD>
{
strComboString.Format("zone count %d", count);
ZoneCountCb.InsertString(count - 1 , strComboString);
}
}
void CSetupPage3::OnCbnSelchangeZoneSelection()
{
SetGameServerPage(m_ctrlZoneCountCb.GetCurSel() + 1);
}
void CSetupPage3::OnBnClickedSaveZoneSetting()
{
Save(false);
}

View File

@@ -0,0 +1,81 @@
#pragma once
#include "afxwin.h"
// CSetupPage3 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
class CSetupPage3 : public CPropertyPage
{
DECLARE_DYNAMIC(CSetupPage3)
public:
CSetupPage3();
virtual ~CSetupPage3();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
enum { IDD = IDD_PAGE_3 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
DECLARE_MESSAGE_MAP()
virtual BOOL OnInitDialog();
virtual BOOL OnSetActive();
private:
BOOL m_bEnabled;
BOOL m_bBattleServer;
BOOL m_bHackCheck;
BOOL m_bPingCheck;
BOOL m_bLotteryEvent;
BOOL m_bLevelUpEvent;
BOOL m_bDeathPenaltyEvent;
CString m_ServerID;
CString m_ServerIDHex;
CString m_DBAgentServerAddress;
CString m_LogServerAddress;
CString m_ChatServerAddress;
CString m_ExpRate;
CString m_DropRate;
CString m_Fame;
CString m_Refine;
CString m_Mileage;
CString m_BattleLimit;
CString m_BattleLimitPer;
CString m_strZoneCount;
CString m_strTCPPort;
CString m_strP1UDPListen;
CComboBox m_Nation;
CComboBox m_ctrlZoneCountCb;
CComboBox m_Zone;
CComboBox m_Channel;
CComboBox m_Group;
CButton m_ctrlSaveZoneSetting;
afx_msg void OnCbnSelchangeGroup();
afx_msg void OnCbnSelchangeZone();
afx_msg void OnCbnSelchangeChannel();
afx_msg void OnBnClickedZoneAdd();
afx_msg void OnBnClickedZoneDel();
afx_msg void OnCbnSelchangeZoneSelection();
afx_msg void OnBnClickedSaveZoneSetting();
void SetGameServerPage(unsigned int nZoneCount);
void SetZoneCountCombo(CComboBox& ZoneCountCb);
void SetZoneSetupInfo(char* szSection);
public:
void Save(bool bSaveType);
CString m_EquipCorrRate;
};

View File

@@ -0,0 +1,284 @@
// SetupPage4.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "ServerGroup.h"
#include "SetupPage4.h"
#include <Utility/Setup/ServerSetup.h>
#include <Network/Packet/PacketStruct/ServerInfo.h>
#include ".\setuppage4.h"
// CSetupPage4 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
IMPLEMENT_DYNAMIC(CSetupPage4, CPropertyPage)
CSetupPage4::CSetupPage4()
: CPropertyPage(CSetupPage4::IDD)
, m_bEnabled(FALSE)
, m_szDBAgentServerID(_T(""))
, m_szVersion(_T(""))
, m_szCheckSum(_T(""))
, m_szPatchAddress(_T(""))
, m_bPingCheck(FALSE)
, m_bBattleServer(FALSE)
, m_bAdminIPCheck(FALSE)
, m_szLoginServerAddr(_T(""))
, m_szUIDServerAddr(_T(""))
, m_szGameDBInfo(_T(""))
, m_szGameListenPort(_T(""))
, m_szAuthListenPort(_T(""))
, m_szChatListenPort(_T(""))
, m_szAdminToolListenPort(_T(""))
, m_szLimitServerGroupUserNum(_T(""))
, m_szLimitBattleGroundUserNum(_T(""))
, m_szLimitBattleGroundUserPer(_T(""))
, m_szPart1DBAgentAddr(_T(""))
, m_szRestrictedTransLevel(_T(""))
, m_szMaxTransCount(_T(""))
{
}
CSetupPage4::~CSetupPage4()
{
}
void CSetupPage4::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_DBAGENT_SERVER_ID, m_szDBAgentServerID);
DDX_Control(pDX, IDC_DBAGENT_SERVER_GROUP, m_cbDBAgentServerGroup);
DDX_Control(pDX, IDC_DBAGENT_SERVER_TYPE, m_cbDBAgentServerType);
DDX_Control(pDX, IDC_DBAGENT_NATION, m_cbDBAgentServiceNation);
DDX_Control(pDX, IDC_DBAGENT_BILLING_TYPE, m_cbDBAgentBillingType);
DDX_Text(pDX, IDC_DBAGENT_VERSION, m_szVersion);
DDX_Text(pDX, IDC_DBAGENT_CHECKSUM, m_szCheckSum);
DDX_Text(pDX, IDC_DBAGENT_PATCH_ADDR, m_szPatchAddress);
DDX_Check(pDX, IDC_DBAGENT_PING_CHECK, m_bPingCheck);
DDX_Check(pDX, IDC_DBAGENT_BATTLE_SERVER, m_bBattleServer);
DDX_Check(pDX, IDC_DBAGENT_ADMIN_IP_CHECK, m_bAdminIPCheck);
DDX_Text(pDX, IDC_DBAGENT_LOGIN_SERVER_ADDR, m_szLoginServerAddr);
DDX_Text(pDX, IDC_DBAGENT_UID_SERVER_ADDR, m_szUIDServerAddr);
DDX_Text(pDX, IDC_DBAGENT_EDT_DBSETTING, m_szGameDBInfo);
DDX_Text(pDX, IDC_DBAGENT_GAME_LISTEN_PORT, m_szGameListenPort);
DDX_Text(pDX, IDC_DBAGENT_AUTH_LISTEN_PORT, m_szAuthListenPort);
DDX_Text(pDX, IDC_DBAGENT_CHAT_LISTEN_PORT, m_szChatListenPort);
DDX_Text(pDX, IDC_DBAGENT_ADMINTOOL_LISTEN_PORT, m_szAdminToolListenPort);
DDX_Text(pDX, IDC_DBAGENT_LIMIT_SERVER_GROUP_USER_NUM, m_szLimitServerGroupUserNum);
DDX_Text(pDX, IDC_DBAGENT_LIMIT_BATTLEGROUND_USER_NUM, m_szLimitBattleGroundUserNum);
DDX_Text(pDX, IDC_DBAGENT_LIMIT_BATTLEGROUND_USER_PER, m_szLimitBattleGroundUserPer);
DDX_Text(pDX, IDC_DBAGENT_PART1UNI_AGENT_ADDR, m_szPart1DBAgentAddr);
DDX_Text(pDX, IDC_DBAGENT_RESTRICTEDLEVEL_P1TOP2, m_szRestrictedTransLevel);
DDX_Text(pDX, IDC_DBAGENT_MAX_TRANSFER_COUNT, m_szMaxTransCount);
DDX_Control(pDX, IDC_DBAGENT_PART2UNIFIED_SERVER_NUM, m_cbSelectableUnifiedServerNum);
}
BEGIN_MESSAGE_MAP(CSetupPage4, CDialog)
ON_BN_CLICKED(IDC_DBAGENT_BTN_DBSETTING, OnBnClickedDbagentBtnDbsetting)
ON_CBN_SELCHANGE(IDC_DBAGENT_SERVER_GROUP, OnCbnSelchangeDbagentServerGroup)
END_MESSAGE_MAP()
// CSetupPage4 <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
BOOL CSetupPage4::OnInitDialog()
{
CPropertyPage::OnInitDialog();
m_szGameListenPort.Format(_T("%d"), CServerSetup::DBAgentServerGameServerListen);
m_szAuthListenPort.Format(_T("%d"), CServerSetup::DBAgentServerAuthServerListen);
m_szChatListenPort.Format(_T("%d"), CServerSetup::DBAgentServerChatServerListen);
m_szAdminToolListenPort.Format(_T("%d"), CServerSetup::DBAgentAdminToolServerListen);
SetServerGroup(m_cbDBAgentServerGroup);
SetDBAgentServerType(m_cbDBAgentServerType);
SetBillingType(m_cbDBAgentBillingType);
SetGameServerNation(m_cbDBAgentServiceNation);
CString szServerID;
CString szServerType;
CString szBillingType;
CString szNationType;
CString szPingCheck;
CString szAdminIPCheck;
CString szBattleServer;
CString szSelectableUnifiedServerNum;
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("ServerID"), szServerID);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("ServerType"), szServerType);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("BillingType"), szBillingType);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("NationType"), szNationType);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("ClientVersion"), m_szVersion);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("PatchAddress"), m_szPatchAddress);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("LoginServerAddr"), m_szLoginServerAddr);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("UIDServerAddr"), m_szUIDServerAddr);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("CheckSum"), m_szCheckSum);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("LimitServerGroupUserNum"), m_szLimitServerGroupUserNum);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("LimitBattleUser"), m_szLimitBattleGroundUserNum);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("LimitBattleUserPer"), m_szLimitBattleGroundUserPer);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("PingCheck"), szPingCheck);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("AdminIPCheck"), szAdminIPCheck);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("BattleServer"), szBattleServer);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBType"), m_GameDB.m_szDBData[DBSetting::DB_TYPE]);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBAddr"), m_GameDB.m_szDBData[DBSetting::DB_ADDR]);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBName"), m_GameDB.m_szDBData[DBSetting::DB_NAME]);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBUser"), m_GameDB.m_szDBData[DBSetting::DB_USER]);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBPass"), m_GameDB.m_szDBData[DBSetting::DB_PASS]);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("Part1UnifiedAgentAddr"), m_szPart1DBAgentAddr);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("RestrictedPart1ToPart2Level"), m_szRestrictedTransLevel);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("MaxTransferCharNum"), m_szMaxTransCount);
ReadStringFromReg(g_szSetupFileName, _T("DBAgentServer"), _T("Part2SelectableUnifiedServerNum"), szSelectableUnifiedServerNum);
int nCount = 0;
CString nNum;
for(nCount = 0; nCount < UnifiedConst::Part1; ++nCount)
{
nNum.Format("%d", nCount);
m_cbSelectableUnifiedServerNum.InsertString(nCount, nNum);
}
m_cbSelectableUnifiedServerNum.SetCurSel(atol(szSelectableUnifiedServerNum));
SERVER_ID serverID = { 0, };
serverID.dwID = atol(szServerID);
m_szDBAgentServerID.Format("0x%08x", serverID.dwID);
m_cbDBAgentServerGroup.SetCurSel(serverID.GetGroup());
m_cbDBAgentBillingType.SetCurSel(atol(szBillingType));
m_cbDBAgentServiceNation.SetCurSel(atol(szNationType));
int nAgentServerType = atoi(szServerType);
int nMaxCount = m_cbDBAgentServerType.GetCount();
for(nCount = 0; nCount < nMaxCount; ++nCount)
{
if(m_cbDBAgentServerType.GetItemData(nCount) == nAgentServerType)
{
m_cbDBAgentServerType.SetCurSel(nCount);
break;
}
}
if(nCount == nMaxCount)
{
m_cbDBAgentServerType.SetCurSel(0);
}
m_bPingCheck = (1 == atol(szPingCheck));
m_bAdminIPCheck = (1 == atol(szAdminIPCheck));
m_bBattleServer = (1 == atol(szBattleServer));
CDBSetting::CreateDBInfoString(m_GameDB, m_szGameDBInfo);
UpdateData(FALSE);
UpdateServerID();
return TRUE;
}
void CSetupPage4::Save(void)
{
if(m_bEnabled)
{
UpdateData(TRUE);
CString szServerID;
CString szServerType;
CString szBillingType;
CString szNationType;
CString szSelectableUnifiedServerNum;
SERVER_ID serverID = {0,};
serverID.sID.ID = 0;
serverID.sID.Channel = 0;
serverID.sID.Type = CServerSetup::AgentServer;
serverID.sID.Group = m_cbDBAgentServerGroup.GetCurSel();
szServerID.Format(_T("%d"), serverID.dwID);
szBillingType.Format(_T("%d"), m_cbDBAgentBillingType.GetCurSel());
szNationType.Format(_T("%d"), m_cbDBAgentServiceNation.GetCurSel());
szSelectableUnifiedServerNum.Format(_T("%d"), m_cbSelectableUnifiedServerNum.GetCurSel());
szServerType.Format(_T("%d"),
m_cbDBAgentServerType.GetItemData(m_cbDBAgentServerType.GetCurSel()));
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("ServerID"), szServerID);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("ServerType"), szServerType);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("BillingType"), szBillingType);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("NationType"), szNationType);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("ClientVersion"), m_szVersion);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("PatchAddress"), m_szPatchAddress);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("LoginServerAddr"), m_szLoginServerAddr);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("UIDServerAddr"), m_szUIDServerAddr);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("CheckSum"), m_szCheckSum);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("LimitServerGroupUserNum"), m_szLimitServerGroupUserNum);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("LimitBattleUser"), m_szLimitBattleGroundUserNum);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("LimitBattleUserPer"), m_szLimitBattleGroundUserPer);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("PingCheck"), BOOLToString(m_bPingCheck));
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("AdminIPCheck"), BOOLToString(m_bAdminIPCheck));
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("BattleServer"), BOOLToString(m_bBattleServer));
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBType"), m_GameDB.m_szDBData[DBSetting::DB_TYPE]);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBAddr"), m_GameDB.m_szDBData[DBSetting::DB_ADDR]);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBName"), m_GameDB.m_szDBData[DBSetting::DB_NAME]);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBUser"), m_GameDB.m_szDBData[DBSetting::DB_USER]);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("GameDBPass"), m_GameDB.m_szDBData[DBSetting::DB_PASS]);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("Part1UnifiedAgentAddr"), m_szPart1DBAgentAddr);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("RestrictedPart1ToPart2Level"), m_szRestrictedTransLevel);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("MaxTransferCharNum"), m_szMaxTransCount);
WriteStringToReg(g_szSetupFileName, _T("DBAgentServer"), _T("Part2SelectableUnifiedServerNum"), szSelectableUnifiedServerNum);
}
}
BOOL CSetupPage4::OnSetActive()
{
// TODO: <20><><EFBFBD>⿡ Ư<><C6AF>ȭ<EFBFBD><C8AD> <20>ڵ带 <20>߰<EFBFBD> <20><>/<2F>Ǵ<EFBFBD> <20>⺻ Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>մϴ<D5B4>.
UpdateData(FALSE);
m_bEnabled = TRUE;
return CPropertyPage::OnSetActive();
}
void CSetupPage4::UpdateServerID()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateData(TRUE);
SERVER_ID serverID = {0,};
serverID.sID.ID = 0;
serverID.sID.Channel = 0;
serverID.sID.Type = CServerSetup::AgentServer;
serverID.sID.Group = m_cbDBAgentServerGroup.GetCurSel();
m_szDBAgentServerID.Format(_T("0x%08x"), serverID.dwID);
UpdateData(FALSE);
}
void CSetupPage4::OnBnClickedDbagentBtnDbsetting()
{
UpdateData(TRUE);
if (CDBSetting::CreateDBSettingDlg(
_T("GameDB DBSetting"),
_T("* GameDB DBSetting \r\n"),
m_GameDB, m_szGameDBInfo))
{
UpdateData(FALSE);
}
}
void CSetupPage4::OnCbnSelchangeDbagentServerGroup()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateServerID();
}

View File

@@ -0,0 +1,70 @@
#pragma once
#include "afxwin.h"
#include "DBSetting.h"
// CSetupPage4 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
class CSetupPage4 : public CPropertyPage
{
DECLARE_DYNAMIC(CSetupPage4)
public:
CSetupPage4();
virtual ~CSetupPage4();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
enum { IDD = IDD_PAGE_4 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
DECLARE_MESSAGE_MAP()
public:
void Save(void);
private:
virtual BOOL OnInitDialog();
virtual BOOL OnSetActive();
void UpdateServerID();
afx_msg void OnBnClickedDbagentBtnDbsetting();
afx_msg void OnCbnSelchangeDbagentServerGroup();
BOOL m_bEnabled;
BOOL m_bPingCheck;
BOOL m_bBattleServer;
BOOL m_bAdminIPCheck;
CComboBox m_cbDBAgentServerGroup;
CComboBox m_cbDBAgentServerType;
CComboBox m_cbDBAgentServiceNation;
CComboBox m_cbDBAgentBillingType;
CComboBox m_cbSelectableUnifiedServerNum;
CString m_szGameListenPort;
CString m_szAuthListenPort;
CString m_szChatListenPort;
CString m_szAdminToolListenPort;
CString m_szDBAgentServerID;
CString m_szVersion;
CString m_szCheckSum;
CString m_szPatchAddress;
CString m_szLoginServerAddr;
CString m_szUIDServerAddr;
CString m_szGameDBInfo;
CString m_szLimitServerGroupUserNum;
CString m_szLimitBattleGroundUserNum;
CString m_szLimitBattleGroundUserPer;
CString m_szPart1DBAgentAddr;
CString m_szRestrictedTransLevel;
CString m_szMaxTransCount;
DBSetting m_GameDB;
};

View File

@@ -0,0 +1,183 @@
// SetupPage5.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "SetupPage5.h"
#include "ServerGroup.h"
#include "DBSetting.h"
#include <Utility/Setup/ServerSetup.h>
// CSetupPage5 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
IMPLEMENT_DYNAMIC(CSetupPage5, CPropertyPage)
CSetupPage5::CSetupPage5()
: CPropertyPage(CSetupPage5::IDD)
, m_bEnabled(FALSE)
, m_bFreeCheck(FALSE)
, m_bIgnoreFlag(FALSE)
, m_HanUnitedBillingAddr(_T(""))
, m_HanUnitedBillingPort(_T(""))
, m_szDBSettingStatus(_T(""))
, m_GammaniaServerCode(_T(""))
, m_GammaniaRegin(_T(""))
, m_GammaniaAddr(_T(""))
, m_GammaniaPort1(_T(""))
, m_GammaniaPort2(_T(""))
{
for (int nIndex = 0; nIndex < DBSetting::MAX_DBDATA; ++nIndex)
{
m_BillingDB.m_szDBData[nIndex].SetString(_T(""));
}
}
CSetupPage5::~CSetupPage5()
{
}
void CSetupPage5::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Check(pDX, IDC_UID_FREE_CHECK, m_bFreeCheck);
DDX_Check(pDX, IDC_UID_IGNORE_FLAG, m_bIgnoreFlag);
DDX_Control(pDX, IDC_UID_BILLING_TYPE, m_BillingType);
DDX_Text(pDX, IDC_UID_HAN_UNITED_BILLING_ADDR, m_HanUnitedBillingAddr);
DDV_MaxChars(pDX, m_HanUnitedBillingAddr, 16);
DDX_Text(pDX, IDC_UID_HAN_UNITED_BILLING_PORT, m_HanUnitedBillingPort);
DDV_MaxChars(pDX, m_HanUnitedBillingPort, 5);
DDX_Text(pDX, IDC_UID_EDT_DBSETTING, m_szDBSettingStatus);
DDX_Text(pDX, IDC_UID_SERVER_CODE, m_GammaniaServerCode);
DDV_MaxChars(pDX, m_GammaniaServerCode, 6);
DDX_Text(pDX, IDC_UID_REGIN, m_GammaniaRegin);
DDV_MaxChars(pDX, m_GammaniaRegin, 2);
DDX_Text(pDX, IDC_UID_ADDRESS, m_GammaniaAddr);
DDV_MaxChars(pDX, m_GammaniaAddr, 32);
DDX_Text(pDX, IDC_UID_PORT1, m_GammaniaPort1);
DDV_MaxChars(pDX, m_GammaniaPort1, 5);
DDX_Text(pDX, IDC_UID_PORT2, m_GammaniaPort2);
DDV_MaxChars(pDX, m_GammaniaPort2, 5);
}
BEGIN_MESSAGE_MAP(CSetupPage5, CDialog)
ON_WM_ACTIVATE()
ON_BN_CLICKED(IDC_UID_BTN_DBSETTING, OnBnClickedUidBtnDbsetting)
END_MESSAGE_MAP()
// CSetupPage5 <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
void CSetupPage5::Save(void)
{
if(m_bEnabled)
{
UpdateData(TRUE);
char szBuffer[64];
// <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD> <20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("FreeCheck"), BOOLToString(m_bFreeCheck));
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("IgnoreFlag"), BOOLToString(m_bIgnoreFlag));
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("BillingType"), itoa(m_BillingType.GetCurSel(), szBuffer, 10));
// <20>Ѱ<EFBFBD><D1B0><EFBFBD> <20><><EFBFBD>պ<EFBFBD><D5BA><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("HanUnitedBillingAddr"), m_HanUnitedBillingAddr);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("HanUnitedBillingPort"), m_HanUnitedBillingPort);
// <20><><EFBFBD><EFBFBD><EFBFBD>Ͼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaServerCode"), m_GammaniaServerCode);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaRegin"), m_GammaniaRegin);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaAddr"), m_GammaniaAddr);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaPort1"), m_GammaniaPort1);
WriteStringToReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaPort2"), m_GammaniaPort2);
// <20><><EFBFBD><EFBFBD><EFBFBD>Ͼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaServerCode"), m_GammaniaServerCode);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaRegin"), m_GammaniaRegin);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaAddr"), m_GammaniaAddr);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaPort1"), m_GammaniaPort1);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaPort2"), m_GammaniaPort2);
// <20><><EFBFBD><EFBFBD> DB<44><42><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBType"), m_BillingDB.m_szDBData[DBSetting::DB_TYPE]);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBAddr"), m_BillingDB.m_szDBData[DBSetting::DB_ADDR]);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBName"), m_BillingDB.m_szDBData[DBSetting::DB_NAME]);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBUser"), m_BillingDB.m_szDBData[DBSetting::DB_USER]);
WriteStringToReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBPass"), m_BillingDB.m_szDBData[DBSetting::DB_PASS]);
}
}
BOOL CSetupPage5::OnSetActive()
{
UpdateData(FALSE);
m_bEnabled = TRUE;
return CPropertyPage::OnSetActive();
}
BOOL CSetupPage5::OnInitDialog()
{
CPropertyPage::OnInitDialog();
SetBillingType(m_BillingType);
CString szFreeCheck;
CString szIgnoreFlag;
CString szBillingType;
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("FreeCheck"), szFreeCheck);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("IgnoreFlag"), szIgnoreFlag);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("BillingType"), szBillingType);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("HanUnitedBillingAddr"), m_HanUnitedBillingAddr);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("HanUnitedBillingPort"), m_HanUnitedBillingPort);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaServerCode"), m_GammaniaServerCode);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaRegin"), m_GammaniaRegin);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaAddr"), m_GammaniaAddr);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaPort1"), m_GammaniaPort1);
ReadStringFromReg(g_szSetupFileName, _T("AuthServer"), _T("GammaniaPort2"), m_GammaniaPort2);
/*
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaServerCode"), m_GammaniaServerCode);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaRegin"), m_GammaniaRegin);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaAddr"), m_GammaniaAddr);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaPort1"), m_GammaniaPort1);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("GammaniaPort2"), m_GammaniaPort2);
*/
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBType"), m_BillingDB.m_szDBData[DBSetting::DB_TYPE]);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBAddr"), m_BillingDB.m_szDBData[DBSetting::DB_ADDR]);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBName"), m_BillingDB.m_szDBData[DBSetting::DB_NAME]);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBUser"), m_BillingDB.m_szDBData[DBSetting::DB_USER]);
ReadStringFromReg(g_szSetupFileName, _T("UIDServer"), _T("BillingDBPass"), m_BillingDB.m_szDBData[DBSetting::DB_PASS]);
m_BillingType.SetCurSel(atoi(szBillingType));
m_bFreeCheck = atoi(szFreeCheck);
m_bIgnoreFlag = atoi(szIgnoreFlag);
m_szDBSettingStatus.SetString(_T("* UIDServer DBSetting \r\n"));
CDBSetting::CreateDBInfoString(m_BillingDB, m_szDBSettingStatus);
UpdateData(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
// <20><><EFBFBD><EFBFBD>: OCX <20>Ӽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FALSE<53><45> <20><>ȯ<EFBFBD>ؾ<EFBFBD> <20>մϴ<D5B4>.
}
void CSetupPage5::OnBnClickedUidBtnDbsetting()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateData(TRUE);
if (CDBSetting::CreateDBSettingDlg(
_T("Keeper DBSetting"),
_T("* Keeper DBSetting \r\n"),
m_BillingDB, m_szDBSettingStatus))
{
UpdateData(FALSE);
}
}

View File

@@ -0,0 +1,52 @@
#pragma once
#include "afxwin.h"
// CSetupPage5 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
#include "DBSetting.h"
class CSetupPage5 : public CPropertyPage
{
DECLARE_DYNAMIC(CSetupPage5)
public:
CSetupPage5();
virtual ~CSetupPage5();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
enum { IDD = IDD_PAGE_5 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
DECLARE_MESSAGE_MAP()
public:
void Save(void);
virtual BOOL OnSetActive();
virtual BOOL OnInitDialog();
private:
afx_msg void OnBnClickedUidBtnDbsetting();
BOOL m_bEnabled;
BOOL m_bFreeCheck;
BOOL m_bIgnoreFlag;
CComboBox m_BillingType;
CString m_HanUnitedBillingAddr;
CString m_HanUnitedBillingPort;
CString m_szDBSettingStatus;
DBSetting m_BillingDB;
CString m_GammaniaServerCode;
CString m_GammaniaRegin;
CString m_GammaniaAddr;
CString m_GammaniaPort1;
CString m_GammaniaPort2;
};

View File

@@ -0,0 +1,219 @@
// SetupPage6.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "SetupPage6.h"
#include "ServerGroup.h"
#include <Utility/Setup/ServerSetup.h>
#include <Network/Packet/PacketStruct/ServerInfo.h>
#include ".\setuppage6.h"
// CSetupPage6 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
IMPLEMENT_DYNAMIC(CSetupPage6, CPropertyPage)
CSetupPage6::CSetupPage6()
: CPropertyPage(CSetupPage6::IDD)
, m_bEnabled(FALSE)
, m_szLogOtherServerListenPort(_T(""))
, m_szLogClientListenPort(_T(""))
, m_szLogDBInfo(_T(""))
, m_szChatServerID(_T(""))
, m_szChatGameServerListenPort(_T(""))
, m_szChatMonitoringToolListenPort(_T(""))
, m_bChatPingCheck(FALSE)
, m_szChatDBAgentServerAddr(_T(""))
, m_szAdminToolDBInfo(_T(""))
, m_bUserIPCheck(FALSE)
{
}
CSetupPage6::~CSetupPage6()
{
}
void CSetupPage6::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
DDX_Text(pDX, IDC_LOG_OTHER_SERVER_PORT, m_szLogOtherServerListenPort);
DDX_Text(pDX, IDC_LOG_CLIENT_PORT, m_szLogClientListenPort);
DDX_Text(pDX, IDC_LOG_EDT_DBSETTING, m_szLogDBInfo);
DDX_Text(pDX, IDC_CHAT_SERVER_ID, m_szChatServerID);
DDX_Text(pDX, IDC_CHAT_GAME_SERVER_TCPPORT, m_szChatGameServerListenPort);
DDX_Text(pDX, IDC_CHAT_MONITORING_TOOL_TCP_PORT, m_szChatMonitoringToolListenPort);
DDX_Check(pDX, IDC_CHAT_PING_CHECK, m_bChatPingCheck);
DDX_Check(pDX, IDC_CHAT_USERIP_CHECK, m_bUserIPCheck);
DDX_Control(pDX, IDC_CHAT_SERVER_GROUP, m_cbChatServerGroup);
DDX_Control(pDX, IDC_CHAT_SERVER_CHANNEL, m_cbChatServerChannel);
DDX_Text(pDX, IDC_CHAT_DBAGENT_SERVER_ADDR, m_szChatDBAgentServerAddr);
DDX_Text(pDX, IDC_CHAT_EDT_DBSETTING, m_szAdminToolDBInfo);
}
BEGIN_MESSAGE_MAP(CSetupPage6, CPropertyPage)
ON_WM_ACTIVATE()
ON_BN_CLICKED(IDC_LOG_BTN_DBSETTING, OnBnClickedLogBtnDbsetting)
ON_BN_CLICKED(IDC_CHAT_BTN_DBSETTING, OnBnClickedChatBtnDbsetting)
ON_CBN_SELCHANGE(IDC_CHAT_SERVER_GROUP, OnCbnSelchangeChatServerGroup)
ON_CBN_SELCHANGE(IDC_CHAT_SERVER_CHANNEL, OnCbnSelchangeChatServerChannel)
END_MESSAGE_MAP()
// CSetupPage6 <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
BOOL CSetupPage6::OnInitDialog()
{
CPropertyPage::OnInitDialog();
m_szLogOtherServerListenPort.Format(_T("%d"), CServerSetup::LogServerOtherServerListen);
m_szLogClientListenPort.Format(_T("%d"), CServerSetup::LogServerLogClientListen);
m_szChatGameServerListenPort.Format(_T("%d"), CServerSetup::ChatServerGameServerListen);
m_szChatMonitoringToolListenPort.Format(_T("%d"), CServerSetup::ChatServerMonitoringToolListen);
SetServerGroup(m_cbChatServerGroup);
SetServerChannel(m_cbChatServerChannel);
ReadStringFromReg(g_szSetupFileName, _T("LogServer"), _T("LogDBType"), m_LogDB.m_szDBData[DBSetting::DB_TYPE]);
ReadStringFromReg(g_szSetupFileName, _T("LogServer"), _T("LogDBAddr"), m_LogDB.m_szDBData[DBSetting::DB_ADDR]);
ReadStringFromReg(g_szSetupFileName, _T("LogServer"), _T("LogDBName"), m_LogDB.m_szDBData[DBSetting::DB_NAME]);
ReadStringFromReg(g_szSetupFileName, _T("LogServer"), _T("LogDBUser"), m_LogDB.m_szDBData[DBSetting::DB_USER]);
ReadStringFromReg(g_szSetupFileName, _T("LogServer"), _T("LogDBPass"), m_LogDB.m_szDBData[DBSetting::DB_PASS]);
CString szChatPingCheck, szUserIPCheck;
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("ServerID"), m_szChatServerID);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("PingCheck"), szChatPingCheck);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("UserIPCheck"), szUserIPCheck);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("DBAgentAddress"), m_szChatDBAgentServerAddr);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBType"), m_AdminToolDB.m_szDBData[DBSetting::DB_TYPE]);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBAddr"), m_AdminToolDB.m_szDBData[DBSetting::DB_ADDR]);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBName"), m_AdminToolDB.m_szDBData[DBSetting::DB_NAME]);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBUser"), m_AdminToolDB.m_szDBData[DBSetting::DB_USER]);
ReadStringFromReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBPass"), m_AdminToolDB.m_szDBData[DBSetting::DB_PASS]);
SERVER_ID serverID = { 0, };
serverID.dwID = atol(m_szChatServerID);
m_cbChatServerGroup.SetCurSel(serverID.sID.Group);
m_cbChatServerChannel.SetCurSel(serverID.sID.Channel);
m_bChatPingCheck = (1 == atoi(szChatPingCheck));
m_bUserIPCheck = (1 == atoi(szUserIPCheck));
m_szLogDBInfo.SetString(_T("* LogServer DBSetting \r\n"));
CDBSetting::CreateDBInfoString(m_LogDB, m_szLogDBInfo);
m_szAdminToolDBInfo.SetString(_T("* AdminToolDBSetting (For chatting ban) \r\n"));
CDBSetting::CreateDBInfoString(m_AdminToolDB, m_szAdminToolDBInfo);
UpdateData(FALSE);
UpdateServerID();
return TRUE; // return TRUE unless you set the focus to a control
// <20><><EFBFBD><EFBFBD>: OCX <20>Ӽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FALSE<53><45> <20><>ȯ<EFBFBD>ؾ<EFBFBD> <20>մϴ<D5B4>.
}
void CSetupPage6::Save()
{
if(m_bEnabled)
{
UpdateData(TRUE);
WriteStringToReg(g_szSetupFileName, _T("LogServer"), _T("LogDBType"), m_LogDB.m_szDBData[DBSetting::DB_TYPE]);
WriteStringToReg(g_szSetupFileName, _T("LogServer"), _T("LogDBAddr"), m_LogDB.m_szDBData[DBSetting::DB_ADDR]);
WriteStringToReg(g_szSetupFileName, _T("LogServer"), _T("LogDBName"), m_LogDB.m_szDBData[DBSetting::DB_NAME]);
WriteStringToReg(g_szSetupFileName, _T("LogServer"), _T("LogDBUser"), m_LogDB.m_szDBData[DBSetting::DB_USER]);
WriteStringToReg(g_szSetupFileName, _T("LogServer"), _T("LogDBPass"), m_LogDB.m_szDBData[DBSetting::DB_PASS]);
SERVER_ID serverID = {0,};
serverID.sID.Type = CServerSetup::ChatServer;
serverID.sID.Group = m_cbChatServerGroup.GetCurSel();
serverID.sID.Channel = m_cbChatServerChannel.GetCurSel();
CString szChatServerID;
CString szChatPingCheck;
CString szUserIPCheck;
szChatServerID.Format(_T("%d"), serverID.dwID);
szChatPingCheck.Format(_T("%s"), BOOLToString(m_bChatPingCheck));
szUserIPCheck.Format(_T("%s"), BOOLToString(m_bUserIPCheck));
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("ServerID"), szChatServerID);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("PingCheck"), szChatPingCheck);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("UserIPCheck"), szUserIPCheck);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("DBAgentAddress"), m_szChatDBAgentServerAddr);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBType"), m_AdminToolDB.m_szDBData[DBSetting::DB_TYPE]);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBAddr"), m_AdminToolDB.m_szDBData[DBSetting::DB_ADDR]);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBName"), m_AdminToolDB.m_szDBData[DBSetting::DB_NAME]);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBUser"), m_AdminToolDB.m_szDBData[DBSetting::DB_USER]);
WriteStringToReg(g_szSetupFileName, _T("ChatServer"), _T("AdminToolDBPass"), m_AdminToolDB.m_szDBData[DBSetting::DB_PASS]);
}
}
BOOL CSetupPage6::OnSetActive()
{
UpdateData(FALSE);
m_bEnabled = TRUE;
return CPropertyPage::OnSetActive();
}
void CSetupPage6::UpdateServerID()
{
UpdateData(TRUE);
SERVER_ID serverID = {0,};
serverID.sID.ID = 0;
serverID.sID.Type = CServerSetup::ChatServer;
serverID.sID.Group = m_cbChatServerGroup.GetCurSel();
serverID.sID.Channel = m_cbChatServerChannel.GetCurSel();
m_szChatServerID.Format("0x%08x", serverID.dwID);
UpdateData(FALSE);
}
void CSetupPage6::OnBnClickedLogBtnDbsetting()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateData(TRUE);
if (CDBSetting::CreateDBSettingDlg(
_T("LogServer DBSetting"),
_T("* LogServer DBSetting \r\n"),
m_LogDB, m_szLogDBInfo))
{
UpdateData(FALSE);
}
}
void CSetupPage6::OnBnClickedChatBtnDbsetting()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateData(TRUE);
if (CDBSetting::CreateDBSettingDlg(
_T("AdminTool (For chatting ban) DBSetting"),
_T("* AdminToolDBSetting (For chatting ban) \r\n"),
m_AdminToolDB, m_szAdminToolDBInfo))
{
UpdateData(FALSE);
}
}
void CSetupPage6::OnCbnSelchangeChatServerGroup()
{
UpdateServerID();
}
void CSetupPage6::OnCbnSelchangeChatServerChannel()
{
UpdateServerID();
}

View File

@@ -0,0 +1,58 @@
#pragma once
#include "afxwin.h"
#include "DBSetting.h"
// CSetupPage6 <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
class CSetupPage6 : public CPropertyPage
{
DECLARE_DYNAMIC(CSetupPage6)
public:
CSetupPage6();
virtual ~CSetupPage6();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
enum { IDD = IDD_PAGE_6 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
virtual BOOL OnInitDialog();
virtual BOOL OnSetActive();
DECLARE_MESSAGE_MAP()
public:
void Save();
private:
void UpdateServerID();
afx_msg void OnBnClickedLogBtnDbsetting();
afx_msg void OnBnClickedChatBtnDbsetting();
afx_msg void OnCbnSelchangeChatServerGroup();
afx_msg void OnCbnSelchangeChatServerChannel();
BOOL m_bEnabled;
BOOL m_bChatPingCheck;
BOOL m_bUserIPCheck;
CString m_szLogOtherServerListenPort;
CString m_szLogClientListenPort;
CString m_szLogDBInfo;
CComboBox m_cbChatServerGroup;
CComboBox m_cbChatServerChannel;
CString m_szChatGameServerListenPort;
CString m_szChatMonitoringToolListenPort;
CString m_szChatServerID;
CString m_szChatDBAgentServerAddr;
CString m_szAdminToolDBInfo;
DBSetting m_LogDB;
DBSetting m_AdminToolDB;
};

View File

@@ -0,0 +1,94 @@
// SetupSheet.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "SetupSheet.h"
#include ".\setupsheet.h"
// CSetupSheet
IMPLEMENT_DYNAMIC(CSetupSheet, CPropertySheet)
CSetupSheet::CSetupSheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
:CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
{
AddPage(&m_Page1);
AddPage(&m_Page2);
AddPage(&m_Page3);
AddPage(&m_Page4);
AddPage(&m_Page5);
AddPage(&m_Page6);
}
CSetupSheet::CSetupSheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
:CPropertySheet(pszCaption, pParentWnd, iSelectPage)
{
AddPage(&m_Page1);
AddPage(&m_Page2);
AddPage(&m_Page3);
AddPage(&m_Page4);
AddPage(&m_Page5);
AddPage(&m_Page6);
}
CSetupSheet::~CSetupSheet()
{
m_Menu.Detach();
}
BEGIN_MESSAGE_MAP(CSetupSheet, CPropertySheet)
ON_COMMAND(ID_SAVE, OnSave)
ON_WM_CREATE()
END_MESSAGE_MAP()
// CSetupSheet <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
BOOL CSetupSheet::OnInitDialog()
{
BOOL bResult = CPropertySheet::OnInitDialog();
// <20>Ŵ<EFBFBD>
m_Menu.LoadMenu(IDR_MENU);
SetMenu(&m_Menu);
// <20><>ư <20><><EFBFBD><EFBFBD>
GetDlgItem(IDOK)->ShowWindow(FALSE);
GetDlgItem(IDCANCEL)->ShowWindow(FALSE);
GetDlgItem(IDHELP)->ShowWindow(FALSE);
GetDlgItem(ID_APPLY_NOW)->ShowWindow(FALSE);
SetActivePage(&m_Page1);
SetActivePage(&m_Page2);
SetActivePage(&m_Page3);
SetActivePage(&m_Page4);
SetActivePage(&m_Page5);
SetActivePage(&m_Page6);
SetActivePage(&m_Page1);
return bResult;
}
void CSetupSheet::OnSave()
{
UpdateData(TRUE);
m_Page1.Save();
m_Page2.Save();
m_Page3.Save(true);
m_Page4.Save();
m_Page5.Save();
m_Page6.Save();
}
int CSetupSheet::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if(CPropertySheet::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: <20><><EFBFBD>⿡ Ư<><C6AF>ȭ<EFBFBD><C8AD> <20>ۼ<EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
return 0;
}

View File

@@ -0,0 +1,37 @@
#pragma once
#include "SetupPage1.h"
#include "SetupPage2.h"
#include "SetupPage3.h"
#include "SetupPage4.h"
#include "SetupPage5.h"
#include "SetupPage6.h"
// CSetupSheet
class CSetupSheet : public CPropertySheet
{
DECLARE_DYNAMIC(CSetupSheet)
CMenu m_Menu;
CSetupPage1 m_Page1;
CSetupPage2 m_Page2;
CSetupPage3 m_Page3;
CSetupPage4 m_Page4;
CSetupPage5 m_Page5;
CSetupPage6 m_Page6;
public:
CSetupSheet(UINT nIDCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);
CSetupSheet(LPCTSTR pszCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);
virtual ~CSetupSheet();
virtual BOOL OnInitDialog();
afx_msg void OnSave();
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
protected:
DECLARE_MESSAGE_MAP()
};

Binary file not shown.

View File

@@ -0,0 +1,72 @@
// SeverSetupDlg.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
//
#include "stdafx.h"
#include "SeverSetupDlg.h"
#include "SetupSheet.h"
#include <Log/ServerLog.h>
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
const TCHAR g_szSetupFileName[] = _T("DemonSetup.ini");
// CSeverSetupDlgApp
BEGIN_MESSAGE_MAP(CSeverSetupDlgApp, CWinApp)
ON_COMMAND(ID_HELP, CWinApp::OnHelp)
END_MESSAGE_MAP()
// CSeverSetupDlgApp <20><><EFBFBD><EFBFBD>
CSeverSetupDlgApp::CSeverSetupDlgApp()
{
// TODO: <20><><EFBFBD><20><><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
// InitInstance<63><65> <20><><EFBFBD><EFBFBD> <20>߿<EFBFBD><DFBF><EFBFBD> <20>ʱ<EFBFBD>ȭ <20>۾<EFBFBD><DBBE><EFBFBD> <20><>ġ<EFBFBD>մϴ<D5B4>.
}
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CSeverSetupDlgApp <20><>ü<EFBFBD>Դϴ<D4B4>.
CSeverSetupDlgApp theApp;
// CSeverSetupDlgApp <20>ʱ<EFBFBD>ȭ
BOOL CSeverSetupDlgApp::InitInstance()
{
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20>Ŵ<EFBFBD><C5B4>佺Ʈ<E4BDBA><C6AE> ComCtl32.dll <20><><EFBFBD><EFBFBD> 6 <20>̻<EFBFBD><CCBB><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD> <20><><EFBFBD>־<EFBFBD> <20><>Ÿ<EFBFBD><C5B8><EFBFBD><EFBFBD>
// <20><><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD>, Windows XP <20>󿡼<EFBFBD> <20>ݵ<EFBFBD><DDB5><EFBFBD> InitCommonControls()<29><> <20>ʿ<EFBFBD><CABF>մϴ<D5B4>.
// InitCommonControls()<29><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> â<><C3A2> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>.
InitCommonControls();
CWinApp::InitInstance();
// AfxEnableControlContainer();
g_Log.Disable(0xFFFFFFFF);
g_SessionLog.Disable(0xFFFFFFFF);
CSetupSheet Sheetdlg("ROW Server Config");
m_pMainWnd = &Sheetdlg;
INT_PTR nResponse = Sheetdlg.DoModal();
if (nResponse == IDOK)
{
// TODO: <20><><EFBFBD><20><>ȭ <20><><EFBFBD>ڰ<EFBFBD> Ȯ<><C8AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD>
// <20>ڵ带 <20><>ġ<EFBFBD>մϴ<D5B4>.
}
else if (nResponse == IDCANCEL)
{
// TODO: <20><><EFBFBD><20><>ȭ <20><><EFBFBD>ڰ<EFBFBD> <20><><EFBFBD>Ҹ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD>
// <20>ڵ带 <20><>ġ<EFBFBD>մϴ<D5B4>.
}
// <20><>ȭ <20><><EFBFBD>ڰ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20>޽<EFBFBD><DEBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʰ<EFBFBD>
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20>ֵ<EFBFBD><D6B5><EFBFBD> FALSE<53><45> <20><>ȯ<EFBFBD>մϴ<D5B4>.
return FALSE;
}

View File

@@ -0,0 +1,32 @@
// SeverSetupDlg.h : PROJECT_NAME <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
//
#pragma once
#ifndef __AFXWIN_H__
#error include 'stdafx.h' before including this file for PCH
#endif
#include "resource.h" // <20><> <20><>ȣ
extern const TCHAR g_szSetupFileName[];
// CSeverSetupDlgApp:
// <20><> Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD> SeverSetupDlg.cpp<70><70> <20><><EFBFBD><EFBFBD><EFBFBD>Ͻʽÿ<CABD>.
//
class CSeverSetupDlgApp : public CWinApp
{
public:
CSeverSetupDlgApp();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public:
virtual BOOL InitInstance();
// <20><><EFBFBD><EFBFBD>
DECLARE_MESSAGE_MAP()
};
extern CSeverSetupDlgApp theApp;

View File

@@ -0,0 +1,686 @@
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// <20>ѱ<EFBFBD><D1B1><EFBFBD> resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_KOR)
#ifdef _WIN32
LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
#pragma code_page(949)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE
BEGIN
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
"#define _AFX_NO_OLE_RESOURCES\r\n"
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
"\r\n"
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_KOR)\r\n"
"LANGUAGE 18, 1\r\n"
"#pragma code_page(949)\r\n"
"#include ""res\\SeverSetupDlg.rc2"" // Microsoft Visual C++<2B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD>\r\n"
"#include ""afxres.rc"" // ǥ<><C7A5> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>\r\n"
"#endif\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDR_MAINFRAME ICON "res\\SeverSetupDlg.ico"
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_PAGE_1 DIALOGEX 0, 0, 272, 119
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "Login Server"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "Ping Check",IDC_LOGIN_PING_CHECK,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,17,62,51,10
CONTROL "Alone Mode",IDC_LOGIN_ALONE_MODE,"Button",
BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED |
WS_TABSTOP,74,63,53,10
EDITTEXT IDC_LOGIN_PATCH_VER,84,78,92,12,ES_AUTOHSCROLL |
ES_NUMBER | NOT WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_LOGIN_PATCH_ADDR,84,92,175,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
CTEXT "Server ID",IDC_STATIC,13,17,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
LTEXT "",IDC_LOGIN_SERVER_ID,66,17,106,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Least Patch Version",IDC_STATIC,13,78,69,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "Patch Address",IDC_STATIC,13,92,69,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
EDITTEXT IDC_LOGIN_LISTEN_LAUNCHER_PORT,124,31,48,12,
ES_AUTOHSCROLL | ES_READONLY
EDITTEXT IDC_LOGIN_LISTEN_DBAGENT_PORT,124,45,48,12,
ES_AUTOHSCROLL | ES_READONLY
CTEXT "Listen Port (For Launcher)",IDC_STATIC,13,31,110,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "Listen Port (For DBAgentServer)",IDC_STATIC,13,45,110,
12,SS_CENTERIMAGE,WS_EX_STATICEDGE
GROUPBOX "Login Server",IDC_STATIC,6,3,259,107,BS_FLAT
END
IDD_PAGE_2 DIALOGEX 0, 0, 247, 238
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "Auth"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "Ping Check",IDC_AUTH_PING_CHECK,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,12,75,51,10
CONTROL "Check Korean (Language)",IDC_AUTH_HAN_CHECK,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,12,88,99,10
EDITTEXT IDC_AUTH_DBAGENT_ADDR,92,59,113,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
COMBOBOX IDC_AUTH_SERVER_TYPE,60,33,86,92,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_AUTH_SERVER_GROUP,60,45,86,101,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
CTEXT "Server ID",IDC_STATIC,7,7,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
LTEXT "",IDC_AUTH_SERVER_ID,60,7,92,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server Type",IDC_STATIC,7,33,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "DBAgentServer Address",IDC_STATIC,7,59,83,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "Server Group",IDC_STATIC,7,45,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
EDITTEXT IDC_AUTH_CLIENT_LISTEN_PORT,95,20,57,12,ES_AUTOHSCROLL |
ES_READONLY
CTEXT "Listen Port (from Client)",IDC_STATIC,7,20,87,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CONTROL "BattleServer(Hangame Only)",IDC_AUTH_BATTLESERVER,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,101,108,10
CONTROL "Supress CharCreate",IDC_AUTH_SUPRESS_CHARCREATE,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,118,75,81,10
CONTROL "Is Test Group",IDC_AUTH_TEST_GROUP,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,12,101,59,10
CONTROL "Supress CharDelete",IDC_AUTH_SUPRESS_CHARDELETE,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,118,88,79,10
PUSHBUTTON "AuthDBSetting",IDC_AUTH_BTN_DBSETTING,170,116,70,55
EDITTEXT IDC_AUTH_EDT_DBSETTING,12,116,154,55,ES_MULTILINE |
ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,
WS_EX_STATICEDGE
PUSHBUTTON "AdminToolDBSetting",IDC_AUTH_BLOCK_BTN_DBSETTING,170,
175,70,55
EDITTEXT IDC_AUTH_BLOCK_EDT_DBSETTING,12,175,154,55,ES_MULTILINE |
ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,
WS_EX_STATICEDGE
END
IDD_PAGE_3 DIALOGEX 0, 0, 352, 276
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "Game Server"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
COMBOBOX IDC_NATION_SELECTION,76,21,72,91,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_ZONE_SELECTION,87,48,71,86,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Save Zone Setting",IDC_SAVE_ZONE_SETING,161,48,101,12,
BS_FLAT
COMBOBOX IDC_GROUP,87,82,97,92,CBS_DROPDOWNLIST | CBS_SORT |
WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_ZONE,87,95,97,92,CBS_DROPDOWNLIST | CBS_SORT |
WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_CHANNEL,87,108,97,92,CBS_DROPDOWNLIST | CBS_SORT |
WS_VSCROLL | WS_TABSTOP
CONTROL "Ping Check",IDC_PINGCHECK,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,27,136,51,10
CONTROL "Check Speed Hack",IDC_HACKCHECK,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,27,145,75,10
CONTROL "Lottery Event",IDC_LOTTERY,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,153,145,60,10
CONTROL "LevelUp GoldBox Event",IDC_LEVELUP,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,153,135,90,10
EDITTEXT IDC_AGENTADDR,93,187,81,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_LOGSERVERADDR,93,201,81,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_CHATSERVERADDR,254,187,81,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_EXP,72,220,38,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_DROP,183,220,38,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_FAME,72,235,38,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_MILEAGE,293,220,38,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_BATTLELIMIT,183,249,38,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
LTEXT "",IDC_SERVERID,71,65,92,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
LTEXT "",IDC_SERVERID_HEX,165,65,82,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
EDITTEXT IDC_ZONE_COUNT,76,7,71,12,ES_CENTER | ES_AUTOHSCROLL |
ES_READONLY
PUSHBUTTON "Add",IDC_ZONE_ADD,150,7,38,12
PUSHBUTTON "Delete",IDC_ZONE_DEL,190,7,38,12
CTEXT "Drop Rate",IDC_STATIC,115,220,65,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
EDITTEXT IDC_ZONE_TCPPORT,189,87,44,14,ES_RIGHT | ES_AUTOHSCROLL |
ES_READONLY
CTEXT "DB Agent Address",IDC_STATIC,18,186,74,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "LogServer Address",IDC_STATIC,18,201,74,12,
SS_CENTERIMAGE | SS_SUNKEN
CTEXT "ChatServer Address",IDC_STATIC,178,187,74,12,
SS_CENTERIMAGE | SS_SUNKEN
CTEXT "Exp Rate",IDC_STATIC,18,220,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server ID",IDC_STATIC,17,65,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server Zone",IDC_STATIC,17,95,68,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server Channel",IDC_STATIC,17,108,68,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server Group",IDC_STATIC,17,82,68,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Limit User Number",IDC_STATIC,115,250,65,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "Zone Count",IDC_STATIC,7,7,67,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
GROUPBOX "",IDC_STATIC,7,37,338,233,BS_FLAT
CTEXT "Current Selection",IDC_STATIC,17,48,67,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
LTEXT "Listen Port (for Client)",IDC_STATIC,190,79,72,8
CONTROL "Is BattleServer Group",IDC_GAMEBATTLESERVER,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,151,23,85,10
CTEXT "Nation",IDC_STATIC,7,21,67,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
GROUPBOX "Event On/Off",IDC_STATIC,143,125,193,54
GROUPBOX "Check Trouble",IDC_STATIC,17,125,122,54
CTEXT "Fame",IDC_STATIC,18,235,52,12,0,WS_EX_STATICEDGE
CTEXT "Mileage",IDC_STATIC,226,220,65,12,0,WS_EX_STATICEDGE
CONTROL "Death Penalty Event",IDC_DEATHPENALTY,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,153,155,82,10
EDITTEXT IDC_ZONE_UDPPORT,189,108,44,14,ES_RIGHT | ES_AUTOHSCROLL |
ES_READONLY
LTEXT "Listen Port (for Part 1 UDP)",IDC_STATIC,190,100,88,8
EDITTEXT IDC_REFINE,72,250,38,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
CTEXT "Refine",IDC_STATIC,18,250,52,12,0,WS_EX_STATICEDGE
EDITTEXT IDC_BATTLELIMITPER,183,235,38,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
CTEXT "Limit User Per",IDC_STATIC,115,235,65,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CONTROL "Event1 (Empty)",IDC_EVENT1,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,153,165,66,10
CONTROL "Event2 (Empty)",IDC_EVENT2,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,244,135,66,10
CONTROL "Event3 (Empty)",IDC_EVENT3,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,244,145,66,10
CONTROL "Event4 (Empty)",IDC_EVENT4,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,244,155,66,10
CONTROL "Event5 (Empty)",IDC_EVENT5,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,244,165,66,10
EDITTEXT IDC_EQUIPCORR,293,235,38,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
CTEXT "Equip Corr Rate",IDC_STATIC,226,235,65,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
END
IDD_PAGE_4 DIALOGEX 0, 0, 350, 257
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "DBAgent Server"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
COMBOBOX IDC_DBAGENT_SERVER_TYPE,73,34,77,79,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_DBAGENT_NATION,218,20,77,79,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_DBAGENT_SERVER_GROUP,73,20,77,92,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_DBAGENT_BILLING_TYPE,218,33,77,166,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
EDITTEXT IDC_DBAGENT_VERSION,60,48,46,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_CHECKSUM,154,48,68,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_PATCH_ADDR,60,61,162,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_LOGIN_SERVER_ADDR,80,76,83,12,ES_AUTOHSCROLL |
NOT WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_UID_SERVER_ADDR,80,89,83,12,ES_AUTOHSCROLL |
NOT WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_LIMIT_SERVER_GROUP_USER_NUM,87,176,44,12,
ES_AUTOHSCROLL | NOT WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_LIMIT_BATTLEGROUND_USER_NUM,87,190,44,12,
ES_AUTOHSCROLL | NOT WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_PART1UNI_AGENT_ADDR,259,177,75,12,
ES_AUTOHSCROLL | NOT WS_VISIBLE | NOT WS_BORDER,
WS_EX_STATICEDGE
COMBOBOX IDC_DBAGENT_PART2UNIFIED_SERVER_NUM,256,232,80,91,
CBS_DROPDOWNLIST | CBS_SORT | NOT WS_VISIBLE |
WS_VSCROLL | WS_TABSTOP
CONTROL "BattleServer",IDC_DBAGENT_BATTLE_SERVER,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,236,65,56,10
CONTROL "Ping Check",IDC_DBAGENT_PING_CHECK,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,236,55,51,10
CONTROL "Check GameMaster IP",IDC_DBAGENT_ADMIN_IP_CHECK,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,236,76,86,10
LTEXT "",IDC_DBAGENT_SERVER_ID,74,8,77,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "LoginServer Address",IDC_STATIC,7,76,72,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "UIDServer Address",IDC_STATIC,7,89,72,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Check Sum",IDC_STATIC,107,48,46,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server Group",IDC_STATIC,14,176,70,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Version",IDC_STATIC,7,48,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Patch Address",IDC_STATIC,8,61,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server Group",IDC_STATIC,7,21,65,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_GAME_LISTEN_PORT,295,105,42,12,
ES_AUTOHSCROLL | ES_READONLY
CTEXT "BillingType",IDC_STATIC,152,33,65,12,SS_CENTERIMAGE |
SS_SUNKEN
CTEXT "Server Type",IDC_STATIC,7,34,65,12,SS_CENTERIMAGE |
SS_SUNKEN
GROUPBOX "[ PartI Connection Info(Part2 Unified Type Only) ]",
IDC_STATIC,170,166,173,56,NOT WS_VISIBLE
CTEXT "Part1 Agent IP",IDC_STATIC,179,177,80,12,NOT WS_VISIBLE,
WS_EX_STATICEDGE
CTEXT "Nation",IDC_STATIC,152,20,65,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
GROUPBOX "[ Part2 Selectable Type Only ]",IDC_STATIC,169,223,174,
27,NOT WS_VISIBLE
CTEXT "UnifiedServerNum",IDC_STATIC,180,233,72,12,
SS_CENTERIMAGE | SS_SUNKEN | NOT WS_VISIBLE
EDITTEXT IDC_DBAGENT_RESTRICTEDLEVEL_P1TOP2,259,191,75,12,
ES_AUTOHSCROLL | NOT WS_VISIBLE | NOT WS_BORDER,
WS_EX_STATICEDGE
CTEXT "RestrictedLevelP1ToP2",IDC_STATIC,179,191,80,12,NOT
WS_VISIBLE,WS_EX_STATICEDGE
CTEXT "MaxCharTransferCount",IDC_STATIC,179,204,80,12,NOT
WS_VISIBLE,WS_EX_STATICEDGE
EDITTEXT IDC_DBAGENT_MAX_TRANSFER_COUNT,259,204,75,12,
ES_AUTOHSCROLL | NOT WS_VISIBLE | NOT WS_BORDER,
WS_EX_STATICEDGE
CTEXT "DBAgentServer ID",IDC_STATIC,7,8,65,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "GameServer",IDC_STATIC,236,105,57,12,SS_CENTERIMAGE |
SS_SUNKEN
CTEXT "AuthServer",IDC_STATIC,236,118,57,12,SS_CENTERIMAGE |
SS_SUNKEN
CTEXT "ChatServer",IDC_STATIC,236,129,57,12,SS_CENTERIMAGE |
SS_SUNKEN
CTEXT "AdminToolServer",IDC_STATIC,236,143,57,12,
SS_CENTERIMAGE | SS_SUNKEN
EDITTEXT IDC_DBAGENT_AUTH_LISTEN_PORT,295,117,42,12,
ES_AUTOHSCROLL | ES_READONLY
EDITTEXT IDC_DBAGENT_CHAT_LISTEN_PORT,295,129,42,12,
ES_AUTOHSCROLL | ES_READONLY
EDITTEXT IDC_DBAGENT_ADMINTOOL_LISTEN_PORT,295,143,42,12,
ES_AUTOHSCROLL | ES_READONLY
PUSHBUTTON "GameDBSetting",IDC_DBAGENT_BTN_DBSETTING,153,104,70,55
EDITTEXT IDC_DBAGENT_EDT_DBSETTING,7,104,144,55,ES_MULTILINE |
ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,
WS_EX_STATICEDGE
CTEXT "BattleGround",IDC_STATIC,14,190,70,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
GROUPBOX "Listen Ports",IDC_STATIC,230,94,112,67
GROUPBOX "Limit User Number",IDC_STATIC,7,166,130,55
EDITTEXT IDC_DBAGENT_LIMIT_BATTLEGROUND_USER_PER,87,204,44,12,
ES_AUTOHSCROLL | NOT WS_BORDER,WS_EX_STATICEDGE
CTEXT "BattleUserPer",IDC_STATIC,14,204,70,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
END
IDD_PAGE_5 DIALOGEX 0, 0, 246, 262
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "UID Server"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "Free Mode",IDC_UID_FREE_CHECK,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,22,34,50,10
CONTROL "Ignore Flag",IDC_UID_IGNORE_FLAG,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,74,34,53,10
COMBOBOX IDC_UID_BILLING_TYPE,73,48,93,92,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
CTEXT "Server ID",IDC_STATIC,20,18,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
LTEXT "",IDC_UID_SERVER_ID,74,18,92,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Billing Type",IDC_STATIC,20,48,52,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
GROUPBOX "UID Server",IDC_STATIC,7,7,232,248,BS_FLAT
CTEXT "HanUnitedBillingAddress",IDC_STATIC,20,65,81,12,
SS_CENTERIMAGE | SS_SUNKEN
EDITTEXT IDC_UID_HAN_UNITED_BILLING_ADDR,102,65,78,12,
ES_AUTOHSCROLL | NOT WS_BORDER,WS_EX_STATICEDGE
EDITTEXT IDC_UID_HAN_UNITED_BILLING_PORT,180,65,50,12,
ES_AUTOHSCROLL | NOT WS_BORDER,WS_EX_STATICEDGE
PUSHBUTTON "KeeperDBSetting",IDC_UID_BTN_DBSETTING,164,81,65,55
EDITTEXT IDC_UID_EDT_DBSETTING,20,81,140,55,ES_MULTILINE |
ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,
WS_EX_STATICEDGE
CTEXT "ServerCode",IDC_STATIC,41,152,81,12,SS_CENTERIMAGE |
SS_SUNKEN
EDITTEXT IDC_UID_SERVER_CODE,123,152,78,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
GROUPBOX "Gammania Auth Info",IDC_STATIC,16,140,213,88
CTEXT "Regin",IDC_STATIC,41,166,81,12,SS_CENTERIMAGE |
SS_SUNKEN
EDITTEXT IDC_UID_REGIN,123,166,78,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
CTEXT "Auth Address",IDC_STATIC,41,181,81,12,SS_CENTERIMAGE |
SS_SUNKEN
EDITTEXT IDC_UID_ADDRESS,123,181,78,12,ES_AUTOHSCROLL | NOT
WS_BORDER,WS_EX_STATICEDGE
CTEXT "LoginPort",IDC_STATIC,41,196,81,12,SS_CENTERIMAGE |
SS_SUNKEN
EDITTEXT IDC_UID_PORT1,123,196,78,12,ES_AUTOHSCROLL | ES_NUMBER |
NOT WS_BORDER,WS_EX_STATICEDGE
CTEXT "LogoutPort",IDC_STATIC,41,211,81,12,SS_CENTERIMAGE |
SS_SUNKEN
EDITTEXT IDC_UID_PORT2,123,211,78,12,ES_AUTOHSCROLL | ES_NUMBER |
NOT WS_BORDER,WS_EX_STATICEDGE
END
IDD_PAGE_6 DIALOGEX 0, 0, 254, 302
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "Log and Chat"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
COMBOBOX IDC_CHAT_SERVER_GROUP,84,185,80,92,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_CHAT_SERVER_CHANNEL,84,198,80,92,CBS_DROPDOWNLIST |
CBS_SORT | WS_VSCROLL | WS_TABSTOP
EDITTEXT IDC_CHAT_DBAGENT_SERVER_ADDR,106,213,123,12,
ES_AUTOHSCROLL | NOT WS_BORDER,WS_EX_STATICEDGE
GROUPBOX "Log Server (not yet implemented)",IDC_STATIC,7,7,240,
103,BS_FLAT
GROUPBOX "Chat Server",IDC_STATIC,7,114,240,180,BS_FLAT
CTEXT "Server Group",IDC_STATIC,19,185,63,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "Server Channel",IDC_STATIC,19,198,63,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "DBAgentServer Address",IDC_STATIC,19,213,85,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "Server ID",IDC_STATIC,19,127,63,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
EDITTEXT IDC_CHAT_SERVER_ID,84,127,90,12,ES_AUTOHSCROLL |
ES_READONLY
CONTROL "Ping Check",IDC_CHAT_PING_CHECK,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,22,171,51,10
EDITTEXT IDC_CHAT_GAME_SERVER_TCPPORT,130,140,45,12,
ES_AUTOHSCROLL | ES_READONLY
CTEXT "Listen Port (For GameServer)",IDC_STATIC,19,140,109,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
EDITTEXT IDC_LOG_OTHER_SERVER_PORT,123,18,47,12,ES_AUTOHSCROLL |
ES_READONLY
PUSHBUTTON "LogDBSetting",IDC_LOG_BTN_DBSETTING,176,47,65,55
EDITTEXT IDC_LOG_EDT_DBSETTING,18,47,154,55,ES_MULTILINE |
ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,
WS_EX_STATICEDGE
PUSHBUTTON "AdminToolDBSetting",IDC_CHAT_BTN_DBSETTING,163,229,76,
55
EDITTEXT IDC_CHAT_EDT_DBSETTING,19,229,140,55,ES_MULTILINE |
ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_LOG_CLIENT_PORT,123,32,48,12,ES_AUTOHSCROLL |
ES_READONLY
CTEXT "Listen Port (For Other Server)",IDC_STATIC,18,18,103,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "Listen Port (For Log Client)",IDC_STATIC,18,32,103,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
EDITTEXT IDC_CHAT_MONITORING_TOOL_TCP_PORT,130,154,45,12,
ES_AUTOHSCROLL | ES_READONLY
CTEXT "Listen Port (For MonitoringTool)",IDC_STATIC,19,154,109,
12,SS_CENTERIMAGE,WS_EX_STATICEDGE
CONTROL "Check MonitoringTool User's IP",IDC_CHAT_USERIP_CHECK,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,81,171,116,10
END
IDD_DBINFO DIALOGEX 0, 0, 192, 121
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
WS_SYSMENU
CAPTION "DBInfo"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
DEFPUSHBUTTON "Ȯ<><C8AE>",IDOK,70,100,50,14
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDCANCEL,124,100,50,14
EDITTEXT IDC_DB_ADDR,89,40,78,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_DB_NAME,89,53,78,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_DB_USER,89,66,78,12,ES_AUTOHSCROLL | NOT WS_BORDER,
WS_EX_STATICEDGE
EDITTEXT IDC_DB_PASS,89,78,78,12,ES_PASSWORD | ES_AUTOHSCROLL |
NOT WS_BORDER,WS_EX_STATICEDGE
CTEXT "DB Address",IDC_DB_ADDR_LABEL,15,40,73,12,
SS_CENTERIMAGE,WS_EX_STATICEDGE
CTEXT "DB User",IDC_STATIC,15,66,73,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "DB Password",IDC_STATIC,15,79,73,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
CTEXT "DB Name",IDC_DB_NAME_LABLE,15,53,73,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
GROUPBOX "Database Info",IDC_STATIC,9,13,168,84
COMBOBOX IDC_DB_TYPE,89,27,78,124,CBS_DROPDOWNLIST | CBS_SORT |
WS_VSCROLL | WS_TABSTOP
CTEXT "DB Type",IDC_STATIC,15,27,73,12,SS_CENTERIMAGE,
WS_EX_STATICEDGE
EDITTEXT IDC_DB_NONE,89,7,78,12,ES_AUTOHSCROLL | NOT WS_VISIBLE |
NOT WS_BORDER,WS_EX_STATICEDGE
END
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "041203b5"
BEGIN
VALUE "CompanyName", "TODO: <ȸ<><C8B8> <20≯<EFBFBD>>"
VALUE "FileDescription", "TODO: <<3C><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>>"
VALUE "FileVersion", "1.0.0.1"
VALUE "InternalName", "SeverSetupDlg.exe"
VALUE "LegalCopyright", "TODO: (c) <ȸ<><C8B8> <20≯<EFBFBD>>. All rights reserved."
VALUE "OriginalFilename", "SeverSetupDlg.exe"
VALUE "ProductName", "TODO: <<3C><>ǰ <20≯<EFBFBD>>"
VALUE "ProductVersion", "1.0.0.1"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x412, 949
END
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO
BEGIN
IDD_PAGE_1, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 265
TOPMARGIN, 7
BOTTOMMARGIN, 112
END
IDD_PAGE_2, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 240
TOPMARGIN, 7
BOTTOMMARGIN, 231
END
IDD_PAGE_3, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 345
TOPMARGIN, 7
BOTTOMMARGIN, 269
END
IDD_PAGE_4, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 343
TOPMARGIN, 7
BOTTOMMARGIN, 250
END
IDD_PAGE_5, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 239
TOPMARGIN, 7
BOTTOMMARGIN, 255
END
IDD_PAGE_6, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 247
TOPMARGIN, 7
BOTTOMMARGIN, 295
END
IDD_DBINFO, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 185
TOPMARGIN, 7
BOTTOMMARGIN, 114
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// RT_MANIFEST
//
IDR_MANIFEST RT_MANIFEST "res\\SeverSetupDlg.manifest"
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_MENU MENU
BEGIN
POPUP "Menu (&M)"
BEGIN
MENUITEM "Save Config (&S)", ID_SAVE
END
END
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE
BEGIN
IDS_ABOUTBOX "SeverSetupDlg <20><><EFBFBD><EFBFBD>(&A)..."
END
#endif // <20>ѱ<EFBFBD><D1B1><EFBFBD> resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_KOR)
LANGUAGE 18, 1
#pragma code_page(949)
#include "res\SeverSetupDlg.rc2" // Microsoft Visual C++<2B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD>
#include "afxres.rc" // ǥ<><C7A5> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

View File

@@ -0,0 +1,253 @@
<?xml version="1.0" encoding="ks_c_5601-1987"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="SeverSetupDlg"
ProjectGUID="{45E35F1A-C466-42AE-9C6E-3D5AF9F16CC5}"
Keyword="MFCProj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="../DBToolExecutable/$(ConfigurationName)"
IntermediateDirectory="../Intermediate/$(ProjectName)/$(ConfigurationName)"
ConfigurationType="1"
UseOfMFC="1"
UseOfATL="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="./;../;../../RylServerProject/RylServerLibrary;../../RylServerProject/BaseLibrary"
PreprocessorDefinitions="WIN32;_WINDOWS;_DEBUG"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
TreatWChar_tAsBuiltInType="TRUE"
UsePrecompiledHeader="2"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="4"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
SubSystem="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="FALSE"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
AdditionalIncludeDirectories="$(IntDir)"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="../DBToolExecutable/$(ConfigurationName)"
IntermediateDirectory="../Intermediate/$(ProjectName)/$(ConfigurationName)"
ConfigurationType="1"
UseOfMFC="1"
UseOfATL="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
AdditionalIncludeDirectories="./;../;../../RylServerProject/RylServerLibrary;../../RylServerProject/BaseLibrary"
PreprocessorDefinitions="WIN32;_WINDOWS;NDEBUG"
StringPooling="TRUE"
MinimalRebuild="FALSE"
RuntimeLibrary="0"
EnableFunctionLevelLinking="TRUE"
TreatWChar_tAsBuiltInType="TRUE"
UsePrecompiledHeader="2"
WarningLevel="3"
Detect64BitPortabilityProblems="FALSE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
IgnoreDefaultLibraryNames=""
GenerateDebugInformation="TRUE"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="FALSE"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
AdditionalIncludeDirectories="$(IntDir)"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Pages"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
<File
RelativePath=".\DBSetting.cpp">
</File>
<File
RelativePath=".\DBSetting.h">
</File>
<File
RelativePath="SetupPage1.cpp">
</File>
<File
RelativePath="SetupPage1.h">
</File>
<File
RelativePath="SetupPage2.cpp">
</File>
<File
RelativePath="SetupPage2.h">
</File>
<File
RelativePath="SetupPage3.cpp">
</File>
<File
RelativePath="SetupPage3.h">
</File>
<File
RelativePath="SetupPage4.cpp">
</File>
<File
RelativePath="SetupPage4.h">
</File>
<File
RelativePath="SetupPage5.cpp">
</File>
<File
RelativePath="SetupPage5.h">
</File>
<File
RelativePath="SetupPage6.cpp">
</File>
<File
RelativePath="SetupPage6.h">
</File>
<File
RelativePath="SetupSheet.cpp">
</File>
<File
RelativePath="SetupSheet.h">
</File>
</Filter>
<Filter
Name="<22><><EFBFBD>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD>"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;jpg;jpeg;jpe;manifest">
<File
RelativePath="res\SeverSetupDlg.ico">
</File>
<File
RelativePath="res\SeverSetupDlg.manifest">
</File>
<File
RelativePath="SeverSetupDlg.rc">
</File>
<File
RelativePath="res\SeverSetupDlg.rc2">
</File>
</Filter>
<Filter
Name="Misc"
Filter="">
<File
RelativePath="Misc\INIFunctions.cpp">
</File>
<File
RelativePath="Misc\INIFunctions.h">
</File>
</Filter>
<File
RelativePath="ReadMe.txt">
</File>
<File
RelativePath="Resource.h">
</File>
<File
RelativePath="ServerGroup.cpp">
</File>
<File
RelativePath="ServerGroup.h">
</File>
<File
RelativePath="SeverSetupDlg.cpp">
</File>
<File
RelativePath="SeverSetupDlg.h">
</File>
<File
RelativePath="stdafx.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
</File>
<File
RelativePath="stdafx.h">
</File>
</Files>
<Globals>
<Global
Name="RESOURCE_FILE"
Value="SeverSetupDlg.rc"/>
</Globals>
</VisualStudioProject>

View File

@@ -0,0 +1,46 @@
///////////////////////////////////////////////////////////////////////////////////////////////
//
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>
//
///////////////////////////////////////////////////////////////////////////////////////////////
#include "../stdafx.h"
#include "INIFunctions.h"
bool WriteStringToReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, const TCHAR *Value_In)
{
return 0 != WritePrivateProfileString(Section_In, KeyName_In, Value_In, FileName_In);
}
bool ReadStringFromReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, TCHAR *Value_Out, int nMaxBuffer)
{
return (0 <= GetPrivateProfileString(Section_In, KeyName_In, "", Value_Out, nMaxBuffer, FileName_In));
}
bool ReadStringFromReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, CString& Value_Out, int nMaxBuffer)
{
TCHAR* szBuffer =
reinterpret_cast<TCHAR*>(_alloca(nMaxBuffer * sizeof(TCHAR)));
if (0 <= GetPrivateProfileString(Section_In, KeyName_In, "", szBuffer, nMaxBuffer, FileName_In))
{
Value_Out.SetString(szBuffer);
return true;
}
return false;
}
bool WriteStructToReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, void *Value_In, int Size_in)
{
return 0 != WritePrivateProfileStruct(Section_In, KeyName_In, Value_In, Size_in, FileName_In);
}
bool ReadStructFromReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, void *Value_Out, int Size_in)
{
return 0 != GetPrivateProfileStruct(Section_In, KeyName_In, Value_Out, Size_in, FileName_In);
}

View File

@@ -0,0 +1,30 @@
///////////////////////////////////////////////////////////////////////////////////////////////
//
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD>
//
///////////////////////////////////////////////////////////////////////////////////////////////
#ifndef _RYL_SERVER_SETUP_INIFunc
#define _RYL_SERVER_SETUP_INIFunc
#include <atlstr.h>
#include <windows.h>
#include <tchar.h>
inline const TCHAR* BOOLToString(BOOL bValue) { return bValue ? _T("1") : _T("0"); }
bool WriteStringToReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, const TCHAR *Value_In);
bool ReadStringFromReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, TCHAR *Value_Out, int nMaxBuffer);
bool ReadStringFromReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, CString& Value_Out, int nMaxBuffer = 512);
bool WriteStructToReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, void *Value_In, int Size_in);
bool ReadStructFromReg(const TCHAR *FileName_In, const TCHAR *Section_In,
const TCHAR *KeyName_In, void *Value_Out, int Size_in);
#endif

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="Microsoft.Windows.SeverSetupDlg"
type="win32"
/>
<description>여기에 응용 프로그램 설명을 추가합니다.</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>

View File

@@ -0,0 +1,13 @@
//
// SeverSetupDlg.RC2 - resources Microsoft Visual C++<2B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʴ<EFBFBD> <20><><EFBFBD>ҽ<EFBFBD>
//
#ifdef APSTUDIO_INVOKED
#error this file is not editable by Microsoft Visual C++
#endif //APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
// <20><><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD> <20>߰<EFBFBD><DFB0>մϴ<D5B4>....
/////////////////////////////////////////////////////////////////////////////

View File

@@ -0,0 +1,151 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by SeverSetupDlg.rc
//
#define IDR_MANIFEST 1
#define IDS_ABOUTBOX 101
#define IDR_MAINFRAME 127
#define IDD_PAGE_1 129
#define IDD_PAGE_2 130
#define IDR_MENU 131
#define ID_SAVE 132
#define IDD_PAGE_3 133
#define IDD_PAGE_4 134
#define IDD_PAGE_5 135
#define IDD_PAGE_6 136
#define IDD_DBINFO 137
#define IDC_SERVERID 1000
#define IDC_LOGIN_PATCH_VER 1001
#define IDC_SERVERID_HEX 1002
#define IDC_DBAGENT_PATCH_ADDR 1003
#define IDC_AUTH_SERVER_TYPE 1004
#define IDC_AUTH_HAN_CHECK 1006
#define IDC_AGENTADDR 1010
#define IDC_HACKCHECK 1012
#define IDC_EXP 1014
#define IDC_DROP 1016
#define IDC_ZONE 1017
#define IDC_CHANNEL 1018
#define IDC_DBAGENT_LOGIN_SERVER_ADDR 1019
#define IDC_DROP2 1019
#define IDC_EQUIPCORR 1019
#define IDC_GROUP 1020
#define IDC_DBAGENT_PART1UNI_AGENT_ADDR 1020
#define IDC_DBAGENT_UID_SERVER_ADDR 1021
#define IDC_DBAGENT_VERSION 1022
#define IDC_PINGCHECK 1023
#define IDC_DBAGENT_RESTRICTEDLEVEL_P1TOP2 1023
#define IDC_DBAGENT_SERVER_GROUP 1024
#define IDC_LOGIN_ALONE_MODE 1025
#define IDC_DBAGENT_MAX_TRANSFER_COUNT 1025
#define IDC_DBAGENT_CHECKSUM 1030
#define IDC_DBAGENT_LIMIT_SERVER_GROUP_USER_NUM 1031
#define IDC_DBAGENT_PING_CHECK 1032
#define IDC_DBAGENT_ADMIN_IP_CHECK 1033
#define IDC_UID_FREE_CHECK 1034
#define IDC_UID_IGNORE_FLAG 1035
#define IDC_LOGSERVERADDR 1042
#define IDC_DBAGENT_PART2UNIFIED_SERVER_NUM 1042
#define IDC_CHAT_SERVER_GROUP 1043
#define IDC_AUTH_SERVER_GROUP 1044
#define IDC_CHATSERVERADDR 1045
#define IDC_CHAT_SERVER_CHANNEL 1046
#define IDC_CHAT_DBAGENT_SERVER_ADDR 1047
#define IDC_CHAT_SERVER_ID 1048
#define IDC_LOTTERY 1049
#define IDC_BATTLELIMIT 1050
#define IDC_CHAT_GAME_SERVER_TCPPORT 1051
#define IDC_BATTLELIMITPER 1051
#define IDC_UID_HAN_UNITED_BILLING_ADDR 1052
#define IDC_LOG_OTHER_SERVER_PORT 1053
#define IDC_UID_SERVER_CODE 1053
#define IDC_UID_HAN_UNITED_BILLING_PORT 1054
#define IDC_LOG_CLIENT_PORT 1054
#define IDC_CHAT_PING_CHECK 1055
#define IDC_UID_REGIN 1055
#define IDC_ZONE_TCPPORT 1056
#define IDC_CHAT_MONITORING_TOOL_TCP_PORT 1056
#define IDC_UID_ADDRESS 1056
#define IDC_ZONE_SELECTION 1057
#define IDC_UID_PORT1 1057
#define IDC_ZONE_TCPPORT2 1058
#define IDC_ZONE_UDPPORT 1058
#define IDC_UID_ADDRESS3 1058
#define IDC_UID_PORT2 1058
#define IDC_ZONE_COUNT 1059
#define IDC_ZONE_ADD 1060
#define IDC_ZONE_DEL 1061
#define IDC_SAVE_ZONE_SETING 1062
#define IDC_LOGIN_LISTEN_LAUNCHER_PORT 1063
#define IDC_LOGIN_LISTEN_DBAGENT_PORT 1064
#define IDC_AUTH_CLIENT_LISTEN_PORT 1065
#define IDC_DBAGENT_GAME_LISTEN_PORT 1067
#define IDC_NATION_SELECTION 1068
#define IDC_DBAGENT_BILLING_TYPE 1068
#define IDC_AUTH_BATTLESERVER 1069
#define IDC_LEVELUP 1069
#define IDC_DBAGENT_BATTLE_SERVER 1069
#define IDC_DEATHPENALTY 1070
#define IDC_DBAGENT_AUTH_LISTEN_PORT 1070
#define IDC_GAMEBATTLESERVER 1071
#define IDC_DBAGENT_CHAT_LISTEN_PORT 1071
#define IDC_AUTH_SUPRESS_CHARCREATE 1072
#define IDC_DBAGENT_ADMINTOOL_LISTEN_PORT 1072
#define IDC_EVENT1 1072
#define IDC_EVENT2 1073
#define IDC_FAME 1074
#define IDC_FAME2 1075
#define IDC_REFINE 1075
#define IDC_EVENT3 1076
#define IDC_MILEAGE 1077
#define IDC_AUTH_TEST_GROUP 1078
#define IDC_EVENT4 1078
#define IDC_DBAGENT_SERVER_TYPE 1079
#define IDC_EVENT5 1079
#define IDC_DBAGENT_NATION 1080
#define IDC_AUTH_SUPRESS_CHARDELETE 1087
#define IDC_UID_BILLING_TYPE 1088
#define IDC_UID_SERVER_ID 1089
#define IDC_DB_TYPE 1093
#define IDC_DB_ADDR 1094
#define IDC_DB_NAME 1095
#define IDC_DB_USER 1096
#define IDC_DB_PASS 1097
#define IDC_UID_BTN_DBSETTING 1098
#define IDC_DB_NONE 1098
#define IDC_UID_EDT_DBSETTING 1099
#define IDC_DB_ADDR_LABEL 1100
#define IDC_DB_NAME_LABLE 1101
#define IDC_LOG_BTN_DBSETTING 1103
#define IDC_LOG_EDT_DBSETTING 1104
#define IDC_CHAT_BTN_DBSETTING 1105
#define IDC_LOGIN_PATCH_ADDR 1105
#define IDC_AUTH_BLOCK_BTN_DBSETTING 1105
#define IDC_CHAT_EDT_DBSETTING 1106
#define IDC_LOGIN_PING_CHECK 1106
#define IDC_AUTH_BLOCK_EDT_DBSETTING 1106
#define IDC_LOGIN_SERVER_ID 1107
#define IDC_AUTH_SERVER_ID 1108
#define IDC_AUTH_DBAGENT_ADDR 1109
#define IDC_AUTH_PING_CHECK 1110
#define IDC_AUTH_EDT_DBSETTING 1111
#define IDC_AUTH_BTN_DBSETTING 1112
#define IDC_DBAGENT_SERVER_ID 1113
#define IDC_DBAGENT_EDT_DBSETTING 1114
#define IDC_DBAGENT_BTN_DBSETTING 1115
#define IDC_DBAGENT_LIMIT_BATTLEGROUND_USER_NUM 1116
#define IDC_CHECK1 1117
#define IDC_CHAT_USERIP_CHECK 1117
#define IDC_DBAGENT_LIMIT_BATTLEGROUND_USER_NUM2 1117
#define IDC_DBAGENT_LIMIT_BATTLEGROUND_USER_PER 1117
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 138
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 1118
#define _APS_NEXT_SYMED_VALUE 104
#endif
#endif

View File

@@ -0,0 +1,7 @@
// stdafx.cpp : ǥ<><C7A5> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20>ҽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
// SeverSetupDlg.pch<63><68> <20≯<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>˴ϴ<CBB4>.
// stdafx.obj<62><6A> <20≯<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
#include "stdafx.h"

View File

@@ -0,0 +1,46 @@
// stdafx.h : <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʰ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
// ǥ<><C7A5> <20>ý<EFBFBD><C3BD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
#pragma once
#ifndef VC_EXTRALEAN
#define VC_EXTRALEAN // Windows <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʴ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ܽ<EFBFBD>ŵ<EFBFBD>ϴ<EFBFBD>.
#endif
// <20>Ʒ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD>ϴ<EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>Ǹ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ͻʽÿ<CABD>.
// <20>ٸ<EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD> <20>ش<EFBFBD> <20><><EFBFBD><EFBFBD> <20>ֽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MSDN<44><4E> <20><><EFBFBD><EFBFBD><EFBFBD>Ͻʽÿ<CABD>.
#ifndef WINVER // Windows 95 <20><> Windows NT 4 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
#define WINVER 0x0400 // Windows 98<39><38> Windows 2000 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>µ<EFBFBD><C2B5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ֽʽÿ<CABD>.
#endif
#ifndef _WIN32_WINNT // Windows NT 4 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
#define _WIN32_WINNT 0x0400 // Windows 98<39><38> Windows 2000 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>µ<EFBFBD><C2B5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ֽʽÿ<CABD>.
#endif
#ifndef _WIN32_WINDOWS // Windows 98 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
#define _WIN32_WINDOWS 0x0410 // Windows Me <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>µ<EFBFBD><C2B5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ֽʽÿ<CABD>.
#endif
#ifndef _WIN32_IE // IE 4.0 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
#define _WIN32_IE 0x0400 // IE 5.0 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>µ<EFBFBD><C2B5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ֽʽÿ<CABD>.
#endif
#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // <20>Ϻ<EFBFBD> CString <20><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>˴ϴ<CBB4>.
// MFC<46><43> <20><><EFBFBD><EFBFBD> <20>κа<CEBA> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>޽<EFBFBD><DEBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
#define _AFX_ALL_WARNINGS
#include <afxwin.h> // MFC <20>ٽ<EFBFBD> <20><> ǥ<><C7A5> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
#include <afxext.h> // MFC <20>ͽ<EFBFBD><CDBD>ټ<EFBFBD>
#include <afxdisp.h> // MFC <20>ڵ<EFBFBD>ȭ Ŭ<><C5AC><EFBFBD><EFBFBD>
#include <afxdtctl.h> // Internet Explorer 4 <20><><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD>ѿ<EFBFBD> <20><><EFBFBD><EFBFBD> MFC <20><><EFBFBD><EFBFBD>
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // Windows <20><><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD>ѿ<EFBFBD> <20><><EFBFBD><EFBFBD> MFC <20><><EFBFBD><EFBFBD>
#endif // _AFX_NO_AFXCMN_SUPPORT
#include <afxdlgs.h>
// <20><><EFBFBD><EFBFBD> <20>߰<EFBFBD>
#include "Misc/INIFunctions.h"