// ServerInfo.cpp : implementation file // #include "stdafx.h" #include "newclient.h" #include "ServerInfo.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CServerInfo dialog extern SERVER_INFO serverinfo[MAXIPNUMBER]; CServerInfo::CServerInfo(CWnd* pParent /*=NULL*/) : CDialog(CServerInfo::IDD, pParent) { //{{AFX_DATA_INIT(CServerInfo) m_channelnum = 0; m_servername = _T(""); m_serverport = 0; m_serverPSW = _T(""); m_username = _T(""); m_PPPOEIP = _T(""); m_SerialNum = _T(""); m_MultiIp = _T(""); //}}AFX_DATA_INIT } void CServerInfo::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CServerInfo) DDX_Control(pDX, IDC_SVRIP, m_ipctrl); DDX_Control(pDX, IDC_COMBOSVRTYPE, m_servertype); DDX_Text(pDX, IDC_CHANNELNUM, m_channelnum); DDX_Text(pDX, IDC_SVRNAME, m_servername); DDX_Text(pDX, IDC_SVRPORT, m_serverport); DDX_Text(pDX, IDC_SVRPSW, m_serverPSW); DDX_Text(pDX, IDC_SVRUSERNAME, m_username); DDX_Text(pDX, IDC_PPPOEIP, m_PPPOEIP); DDX_Text(pDX, IDC_SERIALNUM, m_SerialNum); DDX_Text(pDX, IDC_SVRMULTIIP, m_MultiIp); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CServerInfo, CDialog) //{{AFX_MSG_MAP(CServerInfo) ON_BN_CLICKED(IDC_EXIT, OnExit) ON_BN_CLICKED(IDC_SVROK, OnSvrok) ON_BN_CLICKED(IDC_BUTTONGETIP, OnButtongetip) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CServerInfo message handlers void CServerInfo::OnExit() { // TODO: Add your control notification handler code here CDialog::OnOK(); } BOOL CServerInfo::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here if(serverinfo[m_iServerNum].m_iServerChannelNumber == -1) { m_channelnum= 8; m_serverport = 8000; m_servertype.SetCurSel(0); } else { m_servername.Format(serverinfo[m_iServerNum].m_csServerName); m_username.Format("%s",serverinfo[m_iServerNum].m_csServerAdminName); m_serverPSW.Format("%s",serverinfo[m_iServerNum].m_csServerAdminPasswd); m_channelnum = serverinfo[m_iServerNum].m_iServerChannelNumber; m_ipctrl.SetAddress(serverinfo[m_iServerNum].m_dwServerIPvalue); m_MultiIp.Format(serverinfo[m_iServerNum].m_csServerMultiIP); m_serverport = serverinfo[m_iServerNum].m_wServerPort; if (serverinfo[m_iServerNum].m_wServerType == 30) { m_servertype.SetCurSel(m_servertype.FindString(-1, "IPCAM")); } else if (serverinfo[m_iServerNum].m_wServerType == 40) { m_servertype.SetCurSel(m_servertype.FindString(-1, "IPDOME")); } else if (serverinfo[m_iServerNum].m_wServerType == 50) { m_servertype.SetCurSel(m_servertype.FindString(-1, "IPMOD")); } else { m_servertype.SetCurSel(serverinfo[m_iServerNum].m_wServerType - 1); } m_SerialNum.Format(serverinfo[m_iServerNum].m_csSerialNumber); m_PPPOEIP.Format(""); } UpdateData(FALSE); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CServerInfo::OnCancel() { // TODO: Add extra cleanup here // CDialog::OnCancel(); } void CServerInfo::OnSvrok() { // TODO: Add your control notification handler code here } void CServerInfo::OnButtongetip() { // TODO: Add your control notification handler code here char sTemp[20]; char sTemp1[100]; CString sBuf; NET_DVR_DEVICECFG devicecfg; DWORD dwReturned; char GetIP[16]; if(!NET_DVR_GetDVRConfig(serverinfo[m_iServerNum].m_lServerID, NET_DVR_GET_DEVICECFG, 0, &devicecfg, sizeof(NET_DVR_DEVICECFG), &dwReturned)) { sBuf.Format("获取服务器配置信息失败: NET_DVR_GET_DEVICECFG = %d \n", NET_DVR_GetLastError()); AfxMessageBox(sBuf); return; } sprintf(sTemp, "%s", devicecfg.sDVRName); sprintf(sTemp1, "%s", m_SerialNum); if(!NET_DVR_GetDVRIPByResolveSvr("218.108.8.179", 7071, (BYTE *)sTemp, strlen(sTemp), (BYTE *)sTemp1, strlen(sTemp1), GetIP)) { sBuf.Format("NET_DVR_GetDVRIPByResolveSvr = %d \n", NET_DVR_GetLastError()); AfxMessageBox(sBuf); } else { m_PPPOEIP.Format("%s", GetIP); } TRACE("m_PPPOEIP is %s\n", m_PPPOEIP); UpdateData(FALSE); }