📄 remoteserialconfig.cpp
字号:
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 + -