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,729 @@
// ManageSetupDlg.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
//
#include "stdafx.h"
#include "ManageSetup.h"
#include "ManageSetupDlg.h"
#include "ManageSetupClient.h"
#include "ServerToolUserManagementDlg.h"
#include "RunInfoEditDlg.h"
#include <ServerManage/ManageClientManager.h>
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD> CAboutDlg <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
// <20><>ȭ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
enum { IDD = IDD_ABOUTBOX };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV <20><><EFBFBD><EFBFBD>
// <20><><EFBFBD><EFBFBD>
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
END_MESSAGE_MAP()
// CManageSetupDlg <20><>ȭ <20><><EFBFBD><EFBFBD>
CManageSetupDlg::CManageSetupDlg(CWnd* pParent /*=NULL*/)
: CDialog(CManageSetupDlg::IDD, pParent)
, m_strNewServerIP(_T(""))
, m_strNewServerName(_T(""))
, m_strNewExePath(_T(""))
, m_strSelExePath(_T(""))
, m_strSelServerName(_T(""))
, m_strNewOption(_T(""))
, m_strSelOption(_T(""))
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CManageSetupDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control (pDX, IDC_MACHINE_LIST, m_ctrlMachine);
DDX_Control (pDX, IDC_EXECUTEPATH_LIST, m_ctrlExecutePath);
DDX_Text (pDX, IDC_NEWMACHINEIP_EDIT, m_strNewServerIP);
DDX_Text (pDX, IDC_NEWMACHINENAME_EDIT, m_strNewServerName);
DDX_Text (pDX, IDC_EXEPATH_EDIT, m_strNewExePath);
DDX_Text (pDX, IDC_SELEXEPATH_EDIT, m_strSelExePath);
DDX_Text (pDX, IDC_SELSERVERNAME_EDIT, m_strSelServerName);
DDX_Text(pDX, IDC_NEWOPTION_EDIT, m_strNewOption);
DDX_Text(pDX, IDC_SELOPTION_EDIT, m_strSelOption);
DDX_Control(pDX, IDC_OPTION_LIST, m_ctrlOption);
}
BEGIN_MESSAGE_MAP(CManageSetupDlg, CDialog)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDC_MACHINEADD_BTN, OnBnClickedMachineaddBtn)
ON_BN_CLICKED(IDC_MACHINEMODIFY_BTN, OnBnClickedMachinemodifyBtn)
ON_BN_CLICKED(IDC_MACHINEDEL_BTN, OnBnClickedMachinedelBtn)
ON_BN_CLICKED(IDC_ADDEXEPATH_BTN, OnBnClickedAddexepathBtn)
ON_BN_CLICKED(IDC_DELEXEPATH_BTN, OnBnClickedDelexepathBtn)
ON_BN_CLICKED(IDC_MODIFYEXEPATH_BTN, OnBnClickedModifyexepathBtn)
ON_NOTIFY(LVN_ITEMCHANGED, IDC_EXECUTEPATH_LIST, OnLvnItemchangedExecutepathList)
ON_NOTIFY(LVN_ITEMCHANGED, IDC_MACHINE_LIST, OnLvnItemchangedMachineList)
ON_COMMAND(ID_FUNCTIONS_RUNINFOEDIT, OnFunctionsRuninfoedit)
ON_COMMAND(ID_FUNCTIONS_USERMANAGEMENT, OnFunctionsUsermanagement)
ON_BN_CLICKED(IDC_ADDOPTION_BTN, OnBnClickedAddoptionBtn)
ON_BN_CLICKED(IDC_MODIFYOPTION_BTN, OnBnClickedModifyoptionBtn)
ON_BN_CLICKED(IDC_DELOPTION_BTN, OnBnClickedDeloptionBtn)
ON_NOTIFY(LVN_ITEMCHANGED, IDC_OPTION_LIST, OnLvnItemchangedOptionList)
ON_COMMAND(ID_FUNCTIONS_MANAGESETUPCLIENT, OnFunctionsManagesetupclient)
ON_COMMAND(ID_FUNCTIONS_EXIT, OnFunctionsExit)
END_MESSAGE_MAP()
// CManageSetupDlg <20>޽<EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD>
BOOL CManageSetupDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// <20>ý<EFBFBD><C3BD><EFBFBD> <20>޴<EFBFBD><DEB4><EFBFBD> "<22><><EFBFBD><EFBFBD>..." <20>޴<EFBFBD> <20>׸<EFBFBD><D7B8><EFBFBD> <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
// IDM_ABOUTBOX<4F><58> <20>ý<EFBFBD><C3BD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>־<EFBFBD><D6BE><EFBFBD> <20>մϴ<D5B4>.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// <20><> <20><>ȭ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>. <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><> â<><C3A2> <20><>ȭ <20><><EFBFBD>ڰ<EFBFBD> <20>ƴ<EFBFBD> <20><><EFBFBD><EFBFBD><ECBFA1>
// <20><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>ũ<EFBFBD><C5A9> <20><> <20>۾<EFBFBD><DBBE><EFBFBD> <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
SetIcon(m_hIcon, TRUE); // ū <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
SetIcon(m_hIcon, FALSE); // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
// <09><><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD><C6AE> <20>ʱ<EFBFBD>ȭ <20><> <20><><EFBFBD><EFBFBD>
m_ctrlMachine.SetExtendedStyle ( LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_FLATSB );
m_ctrlMachine.SetBkColor ( COLORREF RGB( 255, 170, 170) );
m_ctrlMachine.SetTextBkColor ( COLORREF RGB( 255, 170, 170) );
m_ctrlMachine.InsertColumn ( 0, _T("IP"), LVCFMT_LEFT, 105 );
m_ctrlMachine.InsertColumn ( 1, _T("Name"), LVCFMT_LEFT, 80 );
m_ctrlExecutePath.SetExtendedStyle ( LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_FLATSB );
m_ctrlExecutePath.SetBkColor ( COLORREF RGB( 230, 243, 254) );
m_ctrlExecutePath.SetTextBkColor ( COLORREF RGB( 230, 243, 254) );
m_ctrlExecutePath.InsertColumn ( 0, _T("Index"), LVCFMT_LEFT, 55 );
m_ctrlExecutePath.InsertColumn ( 1, _T("Full Path"), LVCFMT_LEFT, 510 );
m_ctrlOption.SetExtendedStyle ( LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_FLATSB );
m_ctrlOption.SetBkColor ( COLORREF RGB( 255, 255, 193) );
m_ctrlOption.SetTextBkColor ( COLORREF RGB( 255, 255, 193) );
m_ctrlOption.InsertColumn ( 0, _T("Index"), LVCFMT_LEFT, 55 );
m_ctrlOption.InsertColumn ( 1, _T("Run Option"), LVCFMT_LEFT, 510 );
ServerListSet();
ExecutePathListSet();
OptionListSet();
return TRUE; // <20><>Ʈ<EFBFBD>ѿ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> TRUE<55><45> <20><>ȯ<EFBFBD>մϴ<D5B4>.
}
void CManageSetupDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
// <20><>ȭ <20><><EFBFBD>ڿ<EFBFBD> <20>ּ<EFBFBD>ȭ <20><><EFBFBD>߸<EFBFBD> <20>߰<EFBFBD><DFB0><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>׸<EFBFBD><D7B8><EFBFBD><EFBFBD><EFBFBD>
// <20>Ʒ<EFBFBD> <20>ڵ尡 <20>ʿ<EFBFBD><CABF>մϴ<D5B4>. <20><><EFBFBD><EFBFBD>/<2F><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> MFC <20><><EFBFBD><EFBFBD> <20><><EFBFBD>α׷<CEB1><D7B7><EFBFBD> <20><><EFBFBD><EFBFBD><ECBFA1>
// <20><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>ũ<EFBFBD><C5A9><EFBFBD><EFBFBD> <20><> <20>۾<EFBFBD><DBBE><EFBFBD> <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
void CManageSetupDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // <20>׸<EFBFBD><D7B8><20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>̽<EFBFBD> <20><><EFBFBD>ؽ<EFBFBD>Ʈ
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
// Ŭ<><C5AC><EFBFBD>̾<EFBFBD>Ʈ <20><EFBFBD><E7B0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EEB5A5> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>.
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>׸<EFBFBD><D7B8>ϴ<EFBFBD>.
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
// <20><><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD> <20>ּ<EFBFBD>ȭ<EFBFBD><C8AD> â<><C3A2> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ȿ<EFBFBD> Ŀ<><C4BF><EFBFBD><EFBFBD> ǥ<>õǵ<C3B5><C7B5><EFBFBD> <20>ý<EFBFBD><C3BD>ۿ<EFBFBD><DBBF><EFBFBD>
// <20><> <20>Լ<EFBFBD><D4BC><EFBFBD> ȣ<><C8A3><EFBFBD>մϴ<D5B4>.
HCURSOR CManageSetupDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
// -----------------------------------------------------------------------------------
// <20><><EFBFBD><EFBFBD>Ʈ <20><>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD>
void CManageSetupDlg::ServerListSet()
{
m_ctrlMachine.DeleteAllItems();
CManageClientManager::RunTable runTable;
CManageClientManager::GetInstance().Get(CManageClientManager::SERVER_INFO, runTable);
CManageClientManager::RunTable::iterator pos = runTable.begin();
CManageClientManager::RunTable::iterator end = runTable.end();
unsigned int nIndex = 0;
in_addr addr;
for(; pos != end; ++pos, ++nIndex)
{
ServerManage::RunInfo& runInfo = pos->second;
addr.S_un.S_addr = runInfo.m_dwServerIP;
m_ctrlMachine.InsertItem(nIndex, inet_ntoa(addr));
m_ctrlMachine.SetItemText(nIndex, 1, runInfo.m_szServerName);
}
}
void CManageSetupDlg::ExecutePathListSet()
{
m_ctrlExecutePath.DeleteAllItems();
CManageClientManager::RunTable runTable;
CManageClientManager::GetInstance().Get(CManageClientManager::RUN_PATH_INFO, runTable);
CManageClientManager::RunTable::iterator pos = runTable.begin();
CManageClientManager::RunTable::iterator end = runTable.end();
const int MIN_BUFFER = 64;
char szPathID[MIN_BUFFER];
unsigned int nIndex = 0;
for(; pos != end; ++pos, ++nIndex)
{
ServerManage::RunInfo& runInfo = pos->second;
_snprintf(szPathID, MIN_BUFFER - 1, "%lu", runInfo.m_dwPathID);
szPathID[MIN_BUFFER - 1] = 0;
m_ctrlExecutePath.InsertItem(nIndex, szPathID);
m_ctrlExecutePath.SetItemText(nIndex, 1, runInfo.m_szPath);
}
}
void CManageSetupDlg::OptionListSet()
{
m_ctrlOption.DeleteAllItems();
CManageClientManager::RunTable runTable;
CManageClientManager::GetInstance().Get(CManageClientManager::OPTION_INFO, runTable);
CManageClientManager::RunTable::iterator pos = runTable.begin();
CManageClientManager::RunTable::iterator end = runTable.end();
const int MIN_BUFFER = 64;
char szOptionID[MIN_BUFFER];
unsigned int nIndex = 0;
for(; pos != end; ++pos, ++nIndex)
{
ServerManage::RunInfo& runInfo = pos->second;
_snprintf(szOptionID, MIN_BUFFER - 1, "%lu", runInfo.m_dwOptionID);
szOptionID[MIN_BUFFER - 1] = 0;
m_ctrlOption.InsertItem(nIndex, szOptionID);
m_ctrlOption.SetItemText(nIndex, 1, runInfo.m_szOption);
}
}
//-----------------------------------------------------------------------------
// <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>߰<EFBFBD>, <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD>
void CManageSetupDlg::OnBnClickedMachineaddBtn()
{
UpdateData(true);
if( (m_strNewServerIP != "") && (m_strNewServerName != "") )
{
unsigned long dwServerID = 0;
ServerManage::RunInfo runInfo;
memset(&runInfo, 0, sizeof(ServerManage::RunInfo));
runInfo.m_dwServerIP = inet_addr(m_strNewServerIP);
_snprintf(runInfo.m_szServerName, ServerManage::RunInfo::MAX_SERVER_NAME - 1,
"%s", m_strNewServerName);
runInfo.m_szServerName[ServerManage::RunInfo::MAX_SERVER_NAME - 1] = 0;
if(CManageClientManager::GetInstance().Add(
CManageClientManager::SERVER_INFO, runInfo, dwServerID))
{
m_strNewServerIP = _T("");
m_strNewServerName = _T("");
ServerListSet();
UpdateData(false);
GetDlgItem(IDC_NEWMACHINEIP_EDIT)->SetFocus();
}
else
{
AfxMessageBox( _T("Add server failed"), MB_OK | MB_ICONINFORMATION );
}
}
else
{
AfxMessageBox( _T("Empty value"), MB_OK | MB_ICONINFORMATION );
}
}
void CManageSetupDlg::OnBnClickedMachinemodifyBtn()
{
UpdateData(true);
// <09><><EFBFBD><EFBFBD> <20≯<EFBFBD> <20><><EFBFBD><EFBFBD>
int nSelIndex = m_ctrlMachine.GetNextItem( -1, LVNI_SELECTED );
if(-1 != nSelIndex)
{
unsigned long dwServerIP = inet_addr(m_ctrlMachine.GetItemText(nSelIndex, 0));
if(0 != dwServerIP)
{
UpdateData(true);
unsigned long dwServerID = 0;
ServerManage::RunInfo runInfo;
memset(&runInfo, 0, sizeof(ServerManage::RunInfo));
runInfo.m_dwServerIP = dwServerIP;
_snprintf(runInfo.m_szServerName, ServerManage::RunInfo::MAX_SERVER_NAME - 1,
"%s", m_strSelServerName);
runInfo.m_szServerName[ServerManage::RunInfo::MAX_SERVER_NAME - 1] = 0;
if(CManageClientManager::GetInstance().Modify(
CManageClientManager::SERVER_INFO, runInfo))
{
ServerListSet();
return;
}
}
AfxMessageBox( _T("Add server failed"), MB_OK | MB_ICONINFORMATION );
}
}
void CManageSetupDlg::OnBnClickedMachinedelBtn()
{
int nSelIndex = m_ctrlMachine.GetNextItem( -1, LVNI_SELECTED );
if( -1 != nSelIndex )
{
unsigned long dwServerIP = inet_addr(m_ctrlMachine.GetItemText(nSelIndex, 0));
if(0 != dwServerIP)
{
if(CManageClientManager::GetInstance().Remove(
CManageClientManager::SERVER_INFO, dwServerIP, true))
{
ServerListSet();
return;
}
}
AfxMessageBox( _T("Remove machine failed"), MB_OK | MB_ICONINFORMATION );
}
}
void CManageSetupDlg::OnLvnItemchangedMachineList(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
int nSelIndex = m_ctrlMachine.GetNextItem(-1, LVNI_SELECTED);
if( -1 != nSelIndex )
{
m_strSelServerName.SetString(m_ctrlMachine.GetItemText(nSelIndex, 1));
UpdateData(false);
}
*pResult = 0;
}
//-----------------------------------------------------------------------------
// <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>߰<EFBFBD>, <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD>
void CManageSetupDlg::OnBnClickedAddexepathBtn()
{
UpdateData(true);
if(m_strNewExePath != _T(""))
{
unsigned long dwPathID = 0;
ServerManage::RunInfo runInfo;
memset(&runInfo, 0, sizeof(ServerManage::RunInfo));
_snprintf(runInfo.m_szPath, ServerManage::RunInfo::MAX_PATH_LEN - 1, "%s", m_strNewExePath);
runInfo.m_szPath[ServerManage::RunInfo::MAX_PATH_LEN - 1] = 0;
if(CManageClientManager::GetInstance().Add(
CManageClientManager::RUN_PATH_INFO, runInfo, dwPathID))
{
m_strNewExePath = _T("");
ExecutePathListSet();
UpdateData(false);
GetDlgItem(IDC_EXEPATH_EDIT)->SetFocus();
}
else
{
AfxMessageBox( _T("Add run path failed"), MB_OK | MB_ICONINFORMATION );
}
}
else
{
AfxMessageBox( _T("Empty value"), MB_OK | MB_ICONINFORMATION );
}
}
void CManageSetupDlg::OnBnClickedModifyexepathBtn()
{
UpdateData(true);
int nSelIndex = m_ctrlExecutePath.GetNextItem( -1, LVNI_SELECTED );
if( -1 != nSelIndex )
{
unsigned long dwPathID = 0;
ServerManage::RunInfo runInfo;
memset(&runInfo, 0, sizeof(ServerManage::RunInfo));
runInfo.m_dwPathID = atol(m_ctrlExecutePath.GetItemText(nSelIndex, 0));
_snprintf(runInfo.m_szPath, ServerManage::RunInfo::MAX_PATH_LEN - 1, "%s", m_strSelExePath);
runInfo.m_szPath[ServerManage::RunInfo::MAX_PATH_LEN - 1] = 0;
if(CManageClientManager::GetInstance().Modify(
CManageClientManager::RUN_PATH_INFO, runInfo))
{
ExecutePathListSet();
}
else
{
AfxMessageBox( _T("Modify run path failed"), MB_OK | MB_ICONINFORMATION );
}
}
}
void CManageSetupDlg::OnBnClickedDelexepathBtn()
{
int nSelIndex = m_ctrlExecutePath.GetNextItem( -1, LVNI_SELECTED );
if( -1 != nSelIndex )
{
if(CManageClientManager::GetInstance().Remove(
CManageClientManager::RUN_PATH_INFO,
atol(m_ctrlExecutePath.GetItemText(nSelIndex, 0)), true))
{
ExecutePathListSet();
}
else
{
AfxMessageBox( _T("Remove run path failed"), MB_OK | MB_ICONINFORMATION );
}
}
}
void CManageSetupDlg::OnLvnItemchangedExecutepathList(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
int nSelIndex = m_ctrlExecutePath.GetNextItem(-1, LVNI_SELECTED);
if( -1 != nSelIndex )
{
m_strSelExePath = m_ctrlExecutePath.GetItemText(nSelIndex, 1);
UpdateData(false);
}
*pResult = 0;
}
// -------------------------------------------------------------------------
// <20>ɼ<EFBFBD> <20><><EFBFBD><EFBFBD> ó<><C3B3> <20>Լ<EFBFBD><D4BC><EFBFBD>
void CManageSetupDlg::OnBnClickedAddoptionBtn()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateData(true);
if(m_strNewOption != _T(""))
{
unsigned long dwOptionID = 0;
ServerManage::RunInfo runInfo;
memset(&runInfo, 0, sizeof(ServerManage::RunInfo));
_snprintf(runInfo.m_szOption, ServerManage::RunInfo::MAX_PATH_LEN - 1, "%s", m_strNewOption);
runInfo.m_szOption[ServerManage::RunInfo::MAX_PATH_LEN - 1] = 0;
if(CManageClientManager::GetInstance().Add(
CManageClientManager::OPTION_INFO, runInfo, dwOptionID))
{
m_strNewOption = _T("");
OptionListSet();
UpdateData(false);
GetDlgItem(IDC_NEWOPTION_EDIT)->SetFocus();
}
else
{
AfxMessageBox( _T("Add option failed"), MB_OK | MB_ICONINFORMATION );
}
}
else
{
AfxMessageBox( _T("Empty value"), MB_OK | MB_ICONINFORMATION );
}
}
void CManageSetupDlg::OnBnClickedModifyoptionBtn()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
UpdateData(true);
int nSelIndex = m_ctrlOption.GetNextItem( -1, LVNI_SELECTED );
if( -1 != nSelIndex )
{
ServerManage::RunInfo runInfo;
memset(&runInfo, 0, sizeof(ServerManage::RunInfo));
runInfo.m_dwOptionID = atol(m_ctrlOption.GetItemText(nSelIndex, 0));
_snprintf(runInfo.m_szOption, ServerManage::RunInfo::MAX_PATH_LEN - 1, "%s", m_strSelOption);
runInfo.m_szOption[ServerManage::RunInfo::MAX_PATH_LEN - 1] = 0;
if(CManageClientManager::GetInstance().Modify(
CManageClientManager::OPTION_INFO, runInfo))
{
OptionListSet();
}
else
{
AfxMessageBox( _T("Modify option failed"), MB_OK | MB_ICONINFORMATION );
}
}
}
void CManageSetupDlg::OnBnClickedDeloptionBtn()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
int nSelIndex = m_ctrlOption.GetNextItem( -1, LVNI_SELECTED );
if( -1 != nSelIndex )
{
if(CManageClientManager::GetInstance().Remove(
CManageClientManager::OPTION_INFO,
atol(m_ctrlOption.GetItemText(nSelIndex, 0)), true))
{
OptionListSet();
}
else
{
AfxMessageBox( _T("Remove option failed"), MB_OK | MB_ICONINFORMATION );
}
}
}
void CManageSetupDlg::OnLvnItemchangedOptionList(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
int nSelIndex = m_ctrlOption.GetNextItem(-1, LVNI_SELECTED);
if( -1 != nSelIndex )
{
m_strSelOption = m_ctrlOption.GetItemText(nSelIndex, 1);
UpdateData(false);
}
*pResult = 0;
}
// ---------------------------------------------------------------------------
BOOL CManageSetupDlg::PreTranslateMessage(MSG* pMsg)
{
// EnterŰ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if( ( pMsg->message == WM_KEYDOWN ) && ( pMsg->wParam == VK_RETURN ) )
{
UpdateData( true );
if( ( GetFocus() == GetDlgItem(IDC_NEWMACHINENAME_EDIT) )
&& (m_strNewServerIP != "") && (m_strNewServerName != "") )
OnBnClickedMachineaddBtn();
else if( ( GetFocus() == GetDlgItem(IDC_EXEPATH_EDIT) ) && (m_strNewExePath != _T("")) )
OnBnClickedAddexepathBtn();
else if( ( GetFocus() == GetDlgItem(IDC_NEWEXEINFO_EDIT) ) && (m_strNewOption != _T("")) )
OnBnClickedAddoptionBtn();
else if( GetFocus() == GetDlgItem(IDC_SELSERVERNAME_EDIT) )
OnBnClickedMachinemodifyBtn();
else if( GetFocus() == GetDlgItem(IDC_SELEXEPATH_EDIT) )
OnBnClickedModifyexepathBtn();
else if( GetFocus() == GetDlgItem(IDC_SELOPTION_EDIT) )
OnBnClickedModifyoptionBtn();
}
return CDialog::PreTranslateMessage(pMsg);
}
void CManageSetupDlg::GetMachineList(CComboBox& cbCombo)
{
int nMaxItemCount = m_ctrlMachine.GetItemCount();
CString szString;
TCHAR szIP[MAX_PATH];
TCHAR szServerName[MAX_PATH];
for(int nItemCount = 0; nItemCount < nMaxItemCount; ++nItemCount)
{
m_ctrlMachine.GetItemText(nItemCount, 0, szIP, MAX_PATH);
m_ctrlMachine.GetItemText(nItemCount, 1, szServerName, MAX_PATH);
szString.Format("%s : %s", szIP, szServerName);
cbCombo.InsertString(nItemCount, szString);
cbCombo.SetItemData(nItemCount, inet_addr(szIP));
}
}
void CManageSetupDlg::GetPathList(CComboBox& cbCombo)
{
int nMaxItemCount = m_ctrlExecutePath.GetItemCount();
CString szString;
TCHAR szID[MAX_PATH];
TCHAR szValue[MAX_PATH];
for(int nItemCount = 0; nItemCount < nMaxItemCount; ++nItemCount)
{
m_ctrlExecutePath.GetItemText(nItemCount, 0, szID, MAX_PATH);
m_ctrlExecutePath.GetItemText(nItemCount, 1, szValue, MAX_PATH);
szString.Format("%s", szValue);
cbCombo.InsertString(nItemCount, szString);
cbCombo.SetItemData(nItemCount, atol(szID));
}
}
void CManageSetupDlg::GetOptionList(CComboBox& cbCombo)
{
int nMaxItemCount = m_ctrlOption.GetItemCount();
CString szString;
TCHAR szID[MAX_PATH];
TCHAR szValue[MAX_PATH];
for(int nItemCount = 0; nItemCount < nMaxItemCount; ++nItemCount)
{
m_ctrlOption.GetItemText(nItemCount, 0, szID, MAX_PATH);
m_ctrlOption.GetItemText(nItemCount, 1, szValue, MAX_PATH);
szString.Format("%s", szValue);
cbCombo.InsertString(nItemCount, szString);
cbCombo.SetItemData(nItemCount, atol(szID));
}
}
void CManageSetupDlg::OnFunctionsRuninfoedit()
{
CRunInfoEditDlg dlg;
dlg.DoModal();
}
void CManageSetupDlg::OnFunctionsUsermanagement()
{
CServerToolUserManagementDlg dlg;
dlg.DoModal();
}
void CManageSetupDlg::OnOK()
{
//CDialog::OnOK();
}
void CManageSetupDlg::OnFunctionsManagesetupclient()
{
// TODO: <20><><EFBFBD><20><><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
CManageSetupClient dlg;
dlg.DoModal();
}
void CManageSetupDlg::OnFunctionsExit()
{
// TODO: <20><><EFBFBD><20><><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
PostQuitMessage(0);
}