⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serverinfo.cpp

📁 SDK DVR/DVS HIKVISION
💻 CPP
字号:
// 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;
		//2008-03-15 we have to do this like so because of these three special numbers
		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_NETCFG netcfg;
	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("Get server parameters failed: 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_GetDVRConfig(serverinfo[m_iServerNum].m_lServerID, NET_DVR_GET_NETCFG, 0,&netcfg, sizeof(NET_DVR_NETCFG), &dwReturned))
	{
		sBuf.Format("Get server parameters failed: NET_DVR_GET_NETCFG = %d \n", NET_DVR_GetLastError());
		AfxMessageBox(sBuf);	
		return ;
	}
	if(netcfg.dwPPPOE == 1)
	{	
		if(!NET_DVR_GetDVRIPByResolveSvr(netcfg.sIPServer, 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);
		}	
	}
	UpdateData(FALSE);
}

void CServerInfo::OnOK() 
{
	// TODO: Add extra cleanup here
	
	//	CDialog::OnOK();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -