//确定函数 void CSystemOptionDlg::OnOK() { //获取输入 CInitParamter InitParamter; InitParamter.m_wListenPort=GetDlgItemInt(IDC_LISTEN_PORT); InitParamter.m_wMaxConnect=GetDlgItemInt(IDC_MAX_CONNECT); BYTE *pAddrByte; DWORD dwDataBaseIP; //服务地址 GetDlgItemText(IDC_SERVER_ADDR,InitParamter.m_szLogonServerAddr,CountArray(InitParamter.m_szLogonServerAddr)); //CenterServer dwDataBaseIP=INADDR_NONE; pAddrByte=(BYTE *)&dwDataBaseIP; ((CIPAddressCtrl *)GetDlgItem(IDC_CENTER_SERVER_IP))->GetAddress(dwDataBaseIP); _snprintf(InitParamter.m_szCenterServerAddr,sizeof(InitParamter.m_szCenterServerAddr),TEXT("%d.%d.%d.%d"), pAddrByte[3],pAddrByte[2],pAddrByte[1],pAddrByte[0]); //启动服务密码 GetDlgItemText(IDC_LOGONSERVERPASS,InitParamter.m_szLogonServerPass,sizeof(InitParamter.m_szLogonServerPass)); //保存设置 InitParamter.SaveInitParamter(true); __super::OnOK(); }
//确定函数 void CSystemOptionDlg::OnOK() { //如果超时,退出 if ( IsTimeOut()) { return; } //获取输入 CInitParamter InitParamter; InitParamter.m_wListenPort=GetDlgItemInt(IDC_LISTEN_PORT); InitParamter.m_wMaxConnect=GetDlgItemInt(IDC_MAX_CONNECT); //信息数据库 InitParamter.m_wServerDataBasePort=GetDlgItemInt(IDC_SERVER_DATABASE_PORT); GetDlgItemText(IDC_SERVER_DATABASE_USER,InitParamter.m_szServerDataBaseUser,sizeof(InitParamter.m_szServerDataBaseUser)); GetDlgItemText(IDC_SERVER_DATABASE_PASS,InitParamter.m_szServerDataBasePass,sizeof(InitParamter.m_szServerDataBasePass)); GetDlgItemText(IDC_SERVER_DATABASE_NAME,InitParamter.m_szServerDataBaseName,sizeof(InitParamter.m_szServerDataBaseName)); //信息数据库地址 DWORD dwDataBaseIP=INADDR_NONE; BYTE * pAddrByte=(BYTE *)&dwDataBaseIP; ((CIPAddressCtrl *)GetDlgItem(IDC_SERVER_DATABASE_IP))->GetAddress(dwDataBaseIP); _snprintf(InitParamter.m_szServerDataBaseAddr,sizeof(InitParamter.m_szServerDataBaseAddr),TEXT("%d.%d.%d.%d"), pAddrByte[3],pAddrByte[2],pAddrByte[1],pAddrByte[0]); //保存设置 InitParamter.SaveInitParamter(false); __super::OnOK(); }
//初始化函数 BOOL CSystemOptionDlg::OnInitDialog() { __super::OnInitDialog(); //限制输入 ((CEdit *)GetDlgItem(IDC_LISTEN_PORT))->LimitText(5); ((CEdit *)GetDlgItem(IDC_MAX_CONNECT))->LimitText(3); ((CEdit *)GetDlgItem(IDC_MAIN_PAGE))->LimitText(31); ((CEdit *)GetDlgItem(IDC_USER_DATABASE_PORT))->LimitText(5); ((CEdit *)GetDlgItem(IDC_USER_DATABASE_USER))->LimitText(31); ((CEdit *)GetDlgItem(IDC_USER_DATABASE_PASS))->LimitText(31); ((CEdit *)GetDlgItem(IDC_USER_DATABASE_NAME))->LimitText(31); //加载参数 CInitParamter InitParamter; InitParamter.LoadInitParamter(); //设置控件 SetDlgItemInt(IDC_LISTEN_PORT,InitParamter.m_wListenPort,FALSE); SetDlgItemInt(IDC_MAX_CONNECT,InitParamter.m_wMaxConnect,FALSE); //登录数据库 SetDlgItemInt(IDC_USER_DATABASE_PORT,InitParamter.m_wUserDataBasePort,FALSE); SetDlgItemText(IDC_USER_DATABASE_USER,InitParamter.m_szUserDataBaseUser); SetDlgItemText(IDC_USER_DATABASE_PASS,InitParamter.m_szUserDataBasePass); SetDlgItemText(IDC_USER_DATABASE_NAME,InitParamter.m_szUserDataBaseName); //登录数据库地址 DWORD dwDataBaseIP=inet_addr(InitParamter.m_szUserDataBaseAddr); if (dwDataBaseIP==INADDR_NONE) { LPHOSTENT lpHost=gethostbyname(InitParamter.m_szUserDataBaseAddr); if (lpHost!=NULL) dwDataBaseIP=((LPIN_ADDR)lpHost->h_addr)->s_addr; } CIPAddressCtrl * pDataBaseIP=(CIPAddressCtrl *)GetDlgItem(IDC_USER_DATABASE_IP); pDataBaseIP->SetAddress(ntohl(dwDataBaseIP)); //主站地址 if (InitParamter.m_szMainPage[0]==0) SetDlgItemText(IDC_MAIN_PAGE,szStationPage); else SetDlgItemText(IDC_MAIN_PAGE,InitParamter.m_szMainPage); //中心服务器 dwDataBaseIP=inet_addr(InitParamter.m_szCenterServerAddr); if (dwDataBaseIP==INADDR_NONE) { LPHOSTENT lpHost=gethostbyname(InitParamter.m_szCenterServerAddr); if (lpHost!=NULL) dwDataBaseIP=((LPIN_ADDR)lpHost->h_addr)->s_addr; } pDataBaseIP=(CIPAddressCtrl *)GetDlgItem(IDC_CENTER_SERVER_IP); pDataBaseIP->SetAddress(dwDataBaseIP); return TRUE; }
//确定函数 void CSystemOptionDlg::OnOK() { //获取输入 CInitParamter InitParamter; //登录数据库 InitParamter.m_wGameUserDBPort=GetDlgItemInt(IDC_USER_DATABASE_PORT); GetDlgItemText(IDC_USER_DATABASE_USER,InitParamter.m_szGameUserDBUser,sizeof(InitParamter.m_szGameUserDBUser)); GetDlgItemText(IDC_USER_DATABASE_PASS,InitParamter.m_szGameUserDBPass,sizeof(InitParamter.m_szGameUserDBPass)); GetDlgItemText(IDC_USER_DATABASE_NAME,InitParamter.m_szGameUserDBName,sizeof(InitParamter.m_szGameUserDBName)); //登录数据库地址 DWORD dwDataBaseIP=INADDR_NONE; BYTE * pAddrByte=(BYTE *)&dwDataBaseIP; ((CIPAddressCtrl *)GetDlgItem(IDC_USER_DATABASE_IP))->GetAddress(dwDataBaseIP); _snprintf(InitParamter.m_szGameUserDBAddr,sizeof(InitParamter.m_szGameUserDBAddr),TEXT("%d.%d.%d.%d"), pAddrByte[3],pAddrByte[2],pAddrByte[1],pAddrByte[0]); //信息数据库 InitParamter.m_wServerInfoDBPort=GetDlgItemInt(IDC_SERVER_DATABASE_PORT); GetDlgItemText(IDC_SERVER_DATABASE_USER,InitParamter.m_szServerInfoDBUser,sizeof(InitParamter.m_szServerInfoDBUser)); GetDlgItemText(IDC_SERVER_DATABASE_PASS,InitParamter.m_szServerInfoDBPass,sizeof(InitParamter.m_szServerInfoDBPass)); GetDlgItemText(IDC_SERVER_DATABASE_NAME,InitParamter.m_szServerInfoDBName,sizeof(InitParamter.m_szServerInfoDBName)); //信息数据库地址 dwDataBaseIP=INADDR_NONE; pAddrByte=(BYTE *)&dwDataBaseIP; ((CIPAddressCtrl *)GetDlgItem(IDC_SERVER_DATABASE_IP))->GetAddress(dwDataBaseIP); _snprintf(InitParamter.m_szServerInfoDBAddr,sizeof(InitParamter.m_szServerInfoDBAddr),TEXT("%d.%d.%d.%d"), pAddrByte[3],pAddrByte[2],pAddrByte[1],pAddrByte[0]); //中心服务器 dwDataBaseIP=INADDR_NONE; pAddrByte=(BYTE *)&dwDataBaseIP; ((CIPAddressCtrl *)GetDlgItem(IDC_CENTER_SERVER_IP))->GetAddress(dwDataBaseIP); _snprintf(InitParamter.m_szCenterServerAddr,sizeof(InitParamter.m_szCenterServerAddr),TEXT("%d.%d.%d.%d"), pAddrByte[3],pAddrByte[2],pAddrByte[1],pAddrByte[0]); //保存设置 InitParamter.SaveInitParamter(false); __super::OnOK(); }
//确定函数 void CSystemOptionDlg::OnOK() { //获取输入 CInitParamter InitParamter; InitParamter.m_wListenPort=GetDlgItemInt(IDC_LISTEN_PORT); InitParamter.m_wMaxConnect=GetDlgItemInt(IDC_MAX_CONNECT); //登录数据库 InitParamter.m_wUserDataBasePort=GetDlgItemInt(IDC_USER_DATABASE_PORT); GetDlgItemText(IDC_USER_DATABASE_USER,InitParamter.m_szUserDataBaseUser,sizeof(InitParamter.m_szUserDataBaseUser)); GetDlgItemText(IDC_USER_DATABASE_PASS,InitParamter.m_szUserDataBasePass,sizeof(InitParamter.m_szUserDataBasePass)); GetDlgItemText(IDC_USER_DATABASE_NAME,InitParamter.m_szUserDataBaseName,sizeof(InitParamter.m_szUserDataBaseName)); //登录数据库地址 DWORD dwDataBaseIP=INADDR_NONE; BYTE * pAddrByte=(BYTE *)&dwDataBaseIP; ((CIPAddressCtrl *)GetDlgItem(IDC_USER_DATABASE_IP))->GetAddress(dwDataBaseIP); _snprintf(InitParamter.m_szUserDataBaseAddr,sizeof(InitParamter.m_szUserDataBaseAddr),TEXT("%d.%d.%d.%d"), pAddrByte[3],pAddrByte[2],pAddrByte[1],pAddrByte[0]); //主站地址 GetDlgItemText(IDC_MAIN_PAGE,InitParamter.m_szMainPage,sizeof(InitParamter.m_szMainPage)); if (lstrcmp(InitParamter.m_szMainPage,szStationPage)==0) InitParamter.m_szMainPage[0]=0; //中心服务器 dwDataBaseIP=INADDR_NONE; pAddrByte=(BYTE *)&dwDataBaseIP; ((CIPAddressCtrl *)GetDlgItem(IDC_CENTER_SERVER_IP))->GetAddress(dwDataBaseIP); _snprintf(InitParamter.m_szCenterServerAddr,sizeof(InitParamter.m_szCenterServerAddr),TEXT("%d.%d.%d.%d"), pAddrByte[0],pAddrByte[1],pAddrByte[2],pAddrByte[3]); //保存设置 InitParamter.SaveInitParamter(false); __super::OnOK(); }
//初始化函数 BOOL CSystemOptionDlg::OnInitDialog() { __super::OnInitDialog(); //限制输入 ((CEdit *)GetDlgItem(IDC_LISTEN_PORT))->LimitText(5); ((CEdit *)GetDlgItem(IDC_MAX_CONNECT))->LimitText(3); ((CEdit *)GetDlgItem(IDC_LOGONSERVERPASS))->LimitText(31); //服务地址 TCHAR szHostName[64],szServerAddr[16]; gethostname(szHostName,sizeof(szHostName)); HOSTENT * pHostent=gethostbyname(szHostName); LPIN_ADDR * lpAddrList=(LPIN_ADDR *)pHostent->h_addr_list; CComboBox * pServerAddr=(CComboBox *)GetDlgItem(IDC_SERVER_ADDR); while (*lpAddrList!=NULL) { lstrcpyn(szServerAddr,inet_ntoa(**lpAddrList),CountArray(szServerAddr)); int nIndex=pServerAddr->AddString(szServerAddr); pServerAddr->SetItemData(nIndex,(*lpAddrList)->S_un.S_addr); lpAddrList++; } (((CComboBox *)GetDlgItem(IDC_SERVER_ADDR)))->SetCurSel(0); //加载参数 CInitParamter InitParamter; InitParamter.LoadInitParamter(); //设置控件 SetDlgItemInt(IDC_LISTEN_PORT,InitParamter.m_wListenPort,FALSE); SetDlgItemInt(IDC_MAX_CONNECT,InitParamter.m_wMaxConnect,FALSE); DWORD dwDataBaseIP; CIPAddressCtrl* pDataBaseIP; //服务地址 pServerAddr=(CComboBox *)GetDlgItem(IDC_SERVER_ADDR); int nItemCount=pServerAddr->GetCount(); for (int i=0;i<nItemCount;i++) { CString strTmp; pServerAddr->GetLBText(i, strTmp); if (InitParamter.m_szLogonServerAddr==strTmp) { pServerAddr->SetCurSel(i); break; } } if (nItemCount==i) { pServerAddr->SetWindowText(InitParamter.m_szLogonServerAddr); } //CenterServer dwDataBaseIP=inet_addr(InitParamter.m_szCenterServerAddr); if (dwDataBaseIP==INADDR_NONE) { LPHOSTENT lpHost=gethostbyname(InitParamter.m_szCenterServerAddr); if (lpHost!=NULL) dwDataBaseIP=((LPIN_ADDR)lpHost->h_addr)->s_addr; } pDataBaseIP=(CIPAddressCtrl *)GetDlgItem(IDC_CENTER_SERVER_IP); pDataBaseIP->SetAddress(ntohl(dwDataBaseIP)); //启动服务密码 SetDlgItemText(IDC_LOGONSERVERPASS,InitParamter.m_szLogonServerPass); return TRUE; }
//初始化函数 BOOL CSystemOptionDlg::OnInitDialog() { __super::OnInitDialog(); //限制输入 ((CEdit *)GetDlgItem(IDC_USER_DATABASE_PORT))->LimitText(5); ((CEdit *)GetDlgItem(IDC_USER_DATABASE_USER))->LimitText(31); ((CEdit *)GetDlgItem(IDC_USER_DATABASE_PASS))->LimitText(31); ((CEdit *)GetDlgItem(IDC_USER_DATABASE_NAME))->LimitText(31); ((CEdit *)GetDlgItem(IDC_SERVER_DATABASE_PORT))->LimitText(5); ((CEdit *)GetDlgItem(IDC_SERVER_DATABASE_USER))->LimitText(31); ((CEdit *)GetDlgItem(IDC_SERVER_DATABASE_PASS))->LimitText(31); ((CEdit *)GetDlgItem(IDC_SERVER_DATABASE_NAME))->LimitText(31); //加载参数 CInitParamter InitParamter; InitParamter.LoadInitParamter(); //登录数据库 SetDlgItemInt(IDC_USER_DATABASE_PORT,InitParamter.m_wGameUserDBPort,FALSE); SetDlgItemText(IDC_USER_DATABASE_USER,InitParamter.m_szGameUserDBUser); SetDlgItemText(IDC_USER_DATABASE_PASS,InitParamter.m_szGameUserDBPass); SetDlgItemText(IDC_USER_DATABASE_NAME,InitParamter.m_szGameUserDBName); //信息数据库 SetDlgItemInt(IDC_SERVER_DATABASE_PORT,InitParamter.m_wServerInfoDBPort,FALSE); SetDlgItemText(IDC_SERVER_DATABASE_USER,InitParamter.m_szServerInfoDBUser); SetDlgItemText(IDC_SERVER_DATABASE_PASS,InitParamter.m_szServerInfoDBPass); SetDlgItemText(IDC_SERVER_DATABASE_NAME,InitParamter.m_szServerInfoDBName); //登录数据库地址 DWORD dwDataBaseIP=inet_addr(InitParamter.m_szGameUserDBAddr); if (dwDataBaseIP==INADDR_NONE) { LPHOSTENT lpHost=gethostbyname(InitParamter.m_szGameUserDBAddr); if (lpHost!=NULL) dwDataBaseIP=((LPIN_ADDR)lpHost->h_addr)->s_addr; } CIPAddressCtrl * pDataBaseIP=(CIPAddressCtrl *)GetDlgItem(IDC_USER_DATABASE_IP); pDataBaseIP->SetAddress(ntohl(dwDataBaseIP)); //信息数据库地址 dwDataBaseIP=inet_addr(InitParamter.m_szServerInfoDBAddr); if (dwDataBaseIP==INADDR_NONE) { LPHOSTENT lpHost=gethostbyname(InitParamter.m_szServerInfoDBAddr); if (lpHost!=NULL) dwDataBaseIP=((LPIN_ADDR)lpHost->h_addr)->s_addr; } pDataBaseIP=(CIPAddressCtrl *)GetDlgItem(IDC_SERVER_DATABASE_IP); pDataBaseIP->SetAddress(ntohl(dwDataBaseIP)); //中心服务器 dwDataBaseIP=inet_addr(InitParamter.m_szCenterServerAddr); if (dwDataBaseIP==INADDR_NONE) { LPHOSTENT lpHost=gethostbyname(InitParamter.m_szCenterServerAddr); if (lpHost!=NULL) dwDataBaseIP=((LPIN_ADDR)lpHost->h_addr)->s_addr; } pDataBaseIP=(CIPAddressCtrl *)GetDlgItem(IDC_CENTER_SERVER_IP); pDataBaseIP->SetAddress(ntohl(dwDataBaseIP)); return TRUE; }