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

📄 remoteserialconfig.cpp

📁 SDK DVR/DVS HIKVISION
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		decodercfg[m_nChanSel].byParity = m_checkbit485.GetCurSel();
		decodercfg[m_nChanSel].byFlowcontrol = m_flow485.GetCurSel();
		decodercfg[m_nChanSel].wDecoderType = m_decodetypectrl.GetCurSel();
		decodercfg[m_nChanSel].wDecoderAddress = m_decodeaddr;
		TRACE("m_nChanSel = %d m_decodeaddr = %d", m_nChanSel, m_decodeaddr);
		bSetSerialParams = TRUE;
	}
}


void CRemoteSerialConfig::OnBut485copy() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	m_nCopyChanNum = m_copy485cfgctrl.GetCurSel() - 1;
	if(m_nCopyChanNum == m_nChanSel)
		return;
	if(m_nCopyChanNum == -1)
	{
		for(int i=0; i<m_iChannelnumber; i++)
		{
			if(i == m_nChanSel)
				continue;
			if(bGet485Serial[i])
			{		
				decodercfg[i].dwBaudRate = m_baud485.GetCurSel();
				decodercfg[i].byDataBit = m_databit485.GetCurSel();
				decodercfg[i].byStopBit = m_stopbit485.GetCurSel();
				decodercfg[i].byParity = m_checkbit485.GetCurSel();
				decodercfg[i].byFlowcontrol = m_flow485.GetCurSel();
				decodercfg[i].wDecoderType = m_decodetypectrl.GetCurSel();
				decodercfg[i].wDecoderAddress = m_decodeaddr;
			}
		}		
	}
	else
	{
		if(bGet485Serial[m_nChanSel])
		{		
			decodercfg[m_nChanSel].dwBaudRate = m_baud485.GetCurSel();
			decodercfg[m_nChanSel].byDataBit = m_databit485.GetCurSel();
			decodercfg[m_nChanSel].byStopBit = m_stopbit485.GetCurSel();
			decodercfg[m_nChanSel].byParity = m_checkbit485.GetCurSel();
			decodercfg[m_nChanSel].byFlowcontrol = m_flow485.GetCurSel();
			decodercfg[m_nChanSel].wDecoderType = m_decodetypectrl.GetCurSel();
			decodercfg[m_nChanSel].wDecoderAddress = m_decodeaddr;
		}
	}
	bSetSerialParams = TRUE;
}

void CRemoteSerialConfig::OnSelchangeCombochannel() 
{
	// TODO: Add your control notification handler code here
	m_nChanSel = m_channelctrl.GetCurSel();
	m_nChanNum = m_nChanSel+m_lStartChannel;
	m_baud485.SetCurSel(decodercfg[m_nChanSel].dwBaudRate);
	m_databit485.SetCurSel(decodercfg[m_nChanSel].byDataBit);
	m_stopbit485.SetCurSel(decodercfg[m_nChanSel].byStopBit);
	m_checkbit485.SetCurSel(decodercfg[m_nChanSel].byParity);
	m_flow485.SetCurSel(decodercfg[m_nChanSel].byFlowcontrol);
	m_decodetypectrl.SetCurSel(decodercfg[m_nChanSel].wDecoderType);
	m_decodeaddr = (BYTE)decodercfg[m_nChanSel].wDecoderAddress;
	GetDlgItem(IDSERIALOK)->EnableWindow(TRUE);
	UpdateData(FALSE);
}

void CRemoteSerialConfig::OnSerialok() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	
	if(bGet232Serial)
	{		
		rs232cfg.dwBaudRate = m_baud232.GetCurSel();
		rs232cfg.byDataBit = m_databit232.GetCurSel();
		rs232cfg.byStopBit = m_stopbit232.GetCurSel();
		rs232cfg.byParity = m_checkbit232.GetCurSel();
		rs232cfg.byFlowcontrol = m_flow232.GetCurSel();
		rs232cfg.dwWorkMode = m_operatemode.GetCurSel();
		int OperateSel = 0;
		OperateSel = m_operatemode.GetCurSel();
		if(OperateSel == 0)
		{
			if(m_VerifyPSW != m_Psw)
			{
				AfxMessageBox("Password and verify password are not same!");
				return ;
			}
			rs232cfg.struPPPConfig.byPPPMode = m_PPPModeCtrl.GetCurSel();
			rs232cfg.struPPPConfig.byRedialMode = m_HBModeCtrl.GetCurSel();
			rs232cfg.struPPPConfig.byRedial = (BYTE)m_bHuibo;
			rs232cfg.struPPPConfig.byDataEncrypt = (BYTE)m_bSjjm;
			memcpy(rs232cfg.struPPPConfig.sUsername,m_UserName,NAME_LEN);
			memcpy(rs232cfg.struPPPConfig.sPassword, m_Psw, PASSWD_LEN);
			memcpy(rs232cfg.struPPPConfig.sRemoteIP, m_RemoteIp, 16);
			memcpy(rs232cfg.struPPPConfig.sLocalIP, m_LocalIp, 16);
			memcpy(rs232cfg.struPPPConfig.sLocalIPMask, m_IpMask, 16);
			memcpy(rs232cfg.struPPPConfig.sTelephoneNumber, m_Telephone, PHONENUMBER_LEN);
		}
	}
	bSetSerialParams = TRUE;
}

void CRemoteSerialConfig::OnExit() 
{
	// TODO: Add your control notification handler code here
	bSetSerialParams = FALSE;
}

void CRemoteSerialConfig::OnCancel() 
{
	// TODO: Add extra cleanup here
	
//	CDialog::OnCancel();
}
/*
void CRemoteSerialConfig::OnButtonsend() 
{
	// TODO: Add your control notification handler code here
	char buf[1024];
	char *pTemp = buf;
	UpdateData(TRUE);
	DWORD dwSize = 0;
	dwSize = strlen(m_serialsend);
	sprintf(pTemp, m_serialsend, dwSize);
	if(m_lSerial >= 0)
	{
		NET_DVR_SerialSend(m_lSerial, 0, pTemp, dwSize);
	}
}

void CRemoteSerialConfig::OnButtonstart() 
{
	// TODO: Add your control notification handler code here
	if(m_lSerial >= 0)
	{
		NET_DVR_SerialStop(m_lSerial);
		m_lSerial = -1;
	}
	m_lSerial = NET_DVR_SerialStart(m_lServerID, 1, fSerialDataCallBack, 0);
	if(m_lSerial < 0)
	{
		AfxMessageBox("Create transparent channel failed!");
	}
}

void CRemoteSerialConfig::OnButtonstop() 
{
	// TODO: Add your control notification handler code here
	if(m_lSerial >= 0)
	{
		NET_DVR_SerialStop(m_lSerial);
		m_lSerial = -1;
	}
	TRACE("OnButtonstop!");
}
*/
void CRemoteSerialConfig::OnSelchangeOperatemode() 
{
	// TODO: Add your control notification handler code here
	char cTemp[100];
	UpdateData(TRUE);
	int OperateSel = 0;
	OperateSel = m_operatemode.GetCurSel();
	if(OperateSel == 0)
	{
/*		GetDlgItem(IDC_BUTTONSTART)->EnableWindow(FALSE);
		GetDlgItem(IDC_BUTTONSTOP)->EnableWindow(FALSE);
		GetDlgItem(IDC_BUTTONSEND)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITSEND)->EnableWindow(FALSE);
*/		GetDlgItem(IDC_PPPMODE)->EnableWindow(TRUE);
		GetDlgItem(IDC_HBMODE)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITUSERNAME)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITPSW)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITVERIFYPSW)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITREMOTEIP)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITLOCALIP)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITIPMASK)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITTELEPHONE)->EnableWindow(TRUE);
		GetDlgItem(IDC_SJJM)->EnableWindow(TRUE);
		GetDlgItem(IDC_HUIBO)->EnableWindow(TRUE);
		m_PPPModeCtrl.SetCurSel(rs232cfg.struPPPConfig.byPPPMode);
		m_HBModeCtrl.SetCurSel(rs232cfg.struPPPConfig.byRedialMode);
		m_bHuibo = rs232cfg.struPPPConfig.byRedial;
		m_bSjjm = rs232cfg.struPPPConfig.byDataEncrypt;
		ZeroMemory(cTemp, 100);
		memcpy(cTemp, rs232cfg.struPPPConfig.sUsername, NAME_LEN);
		m_UserName.Format("%s", cTemp);
		ZeroMemory(cTemp, 100);
		memcpy(cTemp, rs232cfg.struPPPConfig.sPassword, PASSWD_LEN);
		m_Psw.Format("%s", cTemp);
		ZeroMemory(cTemp, 100);
		memcpy(cTemp, rs232cfg.struPPPConfig.sPassword, PASSWD_LEN);
		m_VerifyPSW.Format("%s", cTemp);
		m_RemoteIp = rs232cfg.struPPPConfig.sRemoteIP;
		m_LocalIp = rs232cfg.struPPPConfig.sLocalIP;
		m_IpMask = rs232cfg.struPPPConfig.sLocalIPMask;
		ZeroMemory(cTemp, 100);
		memcpy(cTemp, rs232cfg.struPPPConfig.sTelephoneNumber, PHONENUMBER_LEN);
		m_Telephone.Format("%s", cTemp);
	}
	else if(OperateSel == 1)
	{
/*		GetDlgItem(IDC_BUTTONSTART)->EnableWindow(FALSE);
		GetDlgItem(IDC_BUTTONSTOP)->EnableWindow(FALSE);
		GetDlgItem(IDC_BUTTONSEND)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITSEND)->EnableWindow(FALSE);
*/		GetDlgItem(IDC_PPPMODE)->EnableWindow(FALSE);
		GetDlgItem(IDC_HBMODE)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITUSERNAME)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITPSW)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITVERIFYPSW)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITREMOTEIP)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITLOCALIP)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITIPMASK)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITTELEPHONE)->EnableWindow(FALSE);
		GetDlgItem(IDC_SJJM)->EnableWindow(FALSE);
		GetDlgItem(IDC_HUIBO)->EnableWindow(FALSE);
	}
	else if(OperateSel == 2)
	{
/*		GetDlgItem(IDC_BUTTONSTART)->EnableWindow(TRUE);
		GetDlgItem(IDC_BUTTONSTOP)->EnableWindow(TRUE);
		GetDlgItem(IDC_BUTTONSEND)->EnableWindow(TRUE);
		GetDlgItem(IDC_EDITSEND)->EnableWindow(TRUE);
*/		GetDlgItem(IDC_PPPMODE)->EnableWindow(FALSE);
		GetDlgItem(IDC_HBMODE)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITUSERNAME)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITPSW)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITVERIFYPSW)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITREMOTEIP)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITLOCALIP)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITIPMASK)->EnableWindow(FALSE);
		GetDlgItem(IDC_EDITTELEPHONE)->EnableWindow(FALSE);
		GetDlgItem(IDC_SJJM)->EnableWindow(FALSE);
		GetDlgItem(IDC_HUIBO)->EnableWindow(FALSE);
	}
}

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

⌨️ 快捷键说明

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