// ManageSetupDlg.cpp : ±¸Çö ÆÄÀÏ // #include "stdafx.h" #include "ManageSetup.h" #include "ManageSetupDlg.h" #include "ManageSetupClient.h" #include "ServerToolUserManagementDlg.h" #include "RunInfoEditDlg.h" #include #ifdef _DEBUG #define new DEBUG_NEW #endif // ÀÀ¿ë ÇÁ·Î±×·¥ Á¤º¸¿¡ »ç¿ëµÇ´Â CAboutDlg ´ëÈ­ »óÀÚÀÔ´Ï´Ù. class CAboutDlg : public CDialog { public: CAboutDlg(); // ´ëÈ­ »óÀÚ µ¥ÀÌÅÍ enum { IDD = IDD_ABOUTBOX }; protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV Áö¿ø // ±¸Çö 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 ´ëÈ­ »óÀÚ 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 ¸Þ½ÃÁö 󸮱â BOOL CManageSetupDlg::OnInitDialog() { CDialog::OnInitDialog(); // ½Ã½ºÅÛ ¸Þ´º¿¡ "Á¤º¸..." ¸Þ´º Ç׸ñÀ» Ãß°¡ÇÕ´Ï´Ù. // IDM_ABOUTBOX´Â ½Ã½ºÅÛ ¸í·É ¹üÀ§¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. 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); } } // ÀÌ ´ëÈ­ »óÀÚÀÇ ¾ÆÀÌÄÜÀ» ¼³Á¤ÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÁÖ Ã¢ÀÌ ´ëÈ­ »óÀÚ°¡ ¾Æ´Ò °æ¿ì¿¡´Â // ÇÁ·¹ÀÓ¿öÅ©°¡ ÀÌ ÀÛ¾÷À» ÀÚµ¿À¸·Î ¼öÇàÇÕ´Ï´Ù. SetIcon(m_hIcon, TRUE); // Å« ¾ÆÀÌÄÜÀ» ¼³Á¤ÇÕ´Ï´Ù. SetIcon(m_hIcon, FALSE); // ÀÛÀº ¾ÆÀÌÄÜÀ» ¼³Á¤ÇÕ´Ï´Ù. // °¢Á¾ ÄÁÆ®·Ñ ÃʱâÈ­ ¹× ¼³Á¤ 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; // ÄÁÆ®·Ñ¿¡ ´ëÇÑ Æ÷Ä¿½º¸¦ ¼³Á¤ÇÏÁö ¾ÊÀ» °æ¿ì TRUE¸¦ ¹ÝȯÇÕ´Ï´Ù. } void CManageSetupDlg::OnSysCommand(UINT nID, LPARAM lParam) { if ((nID & 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else { CDialog::OnSysCommand(nID, lParam); } } // ´ëÈ­ »óÀÚ¿¡ ÃÖ¼ÒÈ­ ´ÜÃ߸¦ Ãß°¡ÇÒ °æ¿ì ¾ÆÀÌÄÜÀ» ±×¸®·Á¸é // ¾Æ·¡ Äڵ尡 ÇÊ¿äÇÕ´Ï´Ù. ¹®¼­/ºä ¸ðµ¨À» »ç¿ëÇÏ´Â MFC ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ °æ¿ì¿¡´Â // ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ ÀÌ ÀÛ¾÷À» ÀÚµ¿À¸·Î ¼öÇàÇÕ´Ï´Ù. void CManageSetupDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // ±×¸®±â¸¦ À§ÇÑ µð¹ÙÀ̽º ÄÁÅØ½ºÆ® SendMessage(WM_ICONERASEBKGND, reinterpret_cast(dc.GetSafeHdc()), 0); // Ŭ¶óÀÌ¾ðÆ® »ç°¢Çü¿¡¼­ ¾ÆÀÌÄÜÀ» °¡¿îµ¥¿¡ ¸ÂÃä´Ï´Ù. 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; // ¾ÆÀÌÄÜÀ» ±×¸³´Ï´Ù. dc.DrawIcon(x, y, m_hIcon); } else { CDialog::OnPaint(); } } // »ç¿ëÀÚ°¡ ÃÖ¼ÒÈ­µÈ âÀ» ²ô´Â µ¿¾È¿¡ Ä¿¼­°¡ Ç¥½ÃµÇµµ·Ï ½Ã½ºÅÛ¿¡¼­ // ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù. HCURSOR CManageSetupDlg::OnQueryDragIcon() { return static_cast(m_hIcon); } // ----------------------------------------------------------------------------------- // ¸®½ºÆ® ÄÁÆ®·Ñ °»½Å 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); } } //----------------------------------------------------------------------------- // ¼­¹ö Á¤º¸ Ãß°¡, ¼öÁ¤, »èÁ¦ 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); // ¼­¹ö À̸§ ¼öÁ¤ 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(pNMHDR); int nSelIndex = m_ctrlMachine.GetNextItem(-1, LVNI_SELECTED); if( -1 != nSelIndex ) { m_strSelServerName.SetString(m_ctrlMachine.GetItemText(nSelIndex, 1)); UpdateData(false); } *pResult = 0; } //----------------------------------------------------------------------------- // ½ÇÇà °æ·Î Ãß°¡, ¼öÁ¤, »èÁ¦ 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(pNMHDR); int nSelIndex = m_ctrlExecutePath.GetNextItem(-1, LVNI_SELECTED); if( -1 != nSelIndex ) { m_strSelExePath = m_ctrlExecutePath.GetItemText(nSelIndex, 1); UpdateData(false); } *pResult = 0; } // ------------------------------------------------------------------------- // ¿É¼Ç °ü·Ã ó¸® ÇÔ¼öµé void CManageSetupDlg::OnBnClickedAddoptionBtn() { // TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. 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: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. 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: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. 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(pNMHDR); // TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. 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Ű ´­·¶À»¶§ 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: ¿©±â¿¡ ¸í·É 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. CManageSetupClient dlg; dlg.DoModal(); } void CManageSetupDlg::OnFunctionsExit() { // TODO: ¿©±â¿¡ ¸í·É 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. PostQuitMessage(0); }