|
|
|
@ -58,8 +58,11 @@ CMulticastSocketReceiveDlg::CMulticastSocketReceiveDlg(CWnd* pParent /*=NULL*/)
|
|
|
|
|
m_strSACUDPIPAddr = "";
|
|
|
|
|
m_nSACUDPRemotePort = 2203;
|
|
|
|
|
m_nSACUDPLocalPort = 8009;
|
|
|
|
|
|
|
|
|
|
m_sysSetComNumber = 0;//窜口数
|
|
|
|
|
//天进吊舱控制指令至地面站通信接口
|
|
|
|
|
m_WHTJCmdUDPRemotePort = 9000;
|
|
|
|
|
m_WHTJCmdUDPRemoteIPStr = "";
|
|
|
|
|
m_WHTJCmdUDPLocalPort = 9001;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CMulticastSocketReceiveDlg::~CMulticastSocketReceiveDlg()
|
|
|
|
@ -76,6 +79,11 @@ void CMulticastSocketReceiveDlg::DoDataExchange(CDataExchange* pDX)
|
|
|
|
|
DDX_CBString(pDX, IDC_COMBO_PORT_IMP, mComPortIMP);
|
|
|
|
|
DDX_CBString(pDX, IDC_COMBO_BAUD_IMP, mComBaudIMP);
|
|
|
|
|
|
|
|
|
|
//天进吊舱控制指令至地面站通信接口
|
|
|
|
|
DDX_Control(pDX, IDC_TJCmd_RemoteIP, m_WHTJCmdUDPRemoteIP);
|
|
|
|
|
DDX_Text(pDX, IDC_EDIT_TJCmd_RemotePort, m_WHTJCmdUDPRemotePort);
|
|
|
|
|
DDX_Text(pDX, IDC_EDIT_TJCmd_LocalPort, m_WHTJCmdUDPLocalPort);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -97,6 +105,7 @@ BEGIN_MESSAGE_MAP(CMulticastSocketReceiveDlg, CDialogEx)
|
|
|
|
|
ON_BN_CLICKED(IDC_RADIO_DC_13Ins, &CMulticastSocketReceiveDlg::OnBnClickedRadioDc13ins)
|
|
|
|
|
ON_BN_CLICKED(IDC_RADIO_DC_WHTJ, &CMulticastSocketReceiveDlg::OnBnClickedRadioDcWhtj)
|
|
|
|
|
ON_BN_CLICKED(IDC_RADIO_H264Data, &CMulticastSocketReceiveDlg::OnBnClickedRadioH264data)
|
|
|
|
|
ON_BN_CLICKED(IDC_BTN_TJCmd_Connect, &CMulticastSocketReceiveDlg::OnBnClickedBtnTjcmdConnect)
|
|
|
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
|
|
|
|
BOOL CMulticastSocketReceiveDlg::OnInitDialog()
|
|
|
|
@ -133,6 +142,24 @@ BOOL CMulticastSocketReceiveDlg::OnInitDialog()
|
|
|
|
|
((CButton *)GetDlgItem(IDC_RADIO_DC_WHTJ))->SetCheck(false);
|
|
|
|
|
((CButton *)GetDlgItem(IDC_RADIO_H264Data))->SetCheck(false);
|
|
|
|
|
|
|
|
|
|
char inBuf[100];
|
|
|
|
|
g_strSoftwareWorkFolder = GetSoftwareCurrentDirectory(); //当前工作目录
|
|
|
|
|
strSysIniName = g_strSoftwareWorkFolder + _T( "\\SysCfg.ini" );
|
|
|
|
|
|
|
|
|
|
GetPrivateProfileString( "天进吊舱控制-地面站UDP通信设置", "远端IP地址", "0.0.0.0", inBuf, 20, strSysIniName );
|
|
|
|
|
m_WHTJCmdUDPRemoteIPStr.Format( "%s", inBuf );
|
|
|
|
|
m_WHTJCmdUDPRemoteIP.SetWindowText(m_WHTJCmdUDPRemoteIPStr);
|
|
|
|
|
|
|
|
|
|
GetPrivateProfileString( "天进吊舱控制-地面站UDP通信设置", "远端端口号", "", inBuf, 20, strSysIniName );
|
|
|
|
|
m_WHTJCmdUDPRemotePort = atoi( inBuf );
|
|
|
|
|
GetPrivateProfileString( "天进吊舱控制-地面站UDP通信设置", "本地端口号", "", inBuf, 20, strSysIniName );
|
|
|
|
|
m_WHTJCmdUDPLocalPort = atoi( inBuf );
|
|
|
|
|
UpdateData(false);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
|
|
|
|
// 异常: OCX 属性页应返回 FALSE
|
|
|
|
|
}
|
|
|
|
@ -749,3 +776,43 @@ void CMulticastSocketReceiveDlg::OnBnClickedRadioH264data()
|
|
|
|
|
((CButton *)GetDlgItem(IDC_RADIO_DC_WHTJ))->SetCheck(false);
|
|
|
|
|
((CButton *)GetDlgItem(IDC_RADIO_H264Data))->SetCheck(true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//天进吊舱控制-发送至地面站控制指令
|
|
|
|
|
void CMulticastSocketReceiveDlg::OnBnClickedBtnTjcmdConnect()
|
|
|
|
|
{
|
|
|
|
|
// TODO: 在此添加控件通知处理程序代码
|
|
|
|
|
UpdateData(true);
|
|
|
|
|
TCHAR inBuf[30];
|
|
|
|
|
m_WHTJCmdUDPRemoteIP.GetWindowText(m_WHTJCmdUDPRemoteIPStr);
|
|
|
|
|
WritePrivateProfileString( "天进吊舱控制-地面站UDP通信设置", "远端IP地址", m_WHTJCmdUDPRemoteIPStr, strSysIniName );
|
|
|
|
|
WritePrivateProfileString( "天进吊舱控制-地面站UDP通信设置", "本地IP地址", "0.0.0.0",strSysIniName );
|
|
|
|
|
|
|
|
|
|
itoa(m_WHTJCmdUDPRemotePort,inBuf,10);
|
|
|
|
|
WritePrivateProfileString( "天进吊舱控制-地面站UDP通信设置", "远端端口号", inBuf, strSysIniName );
|
|
|
|
|
itoa(m_WHTJCmdUDPLocalPort,inBuf,10);
|
|
|
|
|
WritePrivateProfileString( "天进吊舱控制-地面站UDP通信设置", "本地端口号", inBuf, strSysIniName );
|
|
|
|
|
|
|
|
|
|
CString str;
|
|
|
|
|
GetDlgItemText(IDC_BTN_TJCmd_Connect, str);
|
|
|
|
|
if(str == _T("断开"))
|
|
|
|
|
{
|
|
|
|
|
if(WHTJCmdGCSUDPSocket.StartListening())
|
|
|
|
|
{
|
|
|
|
|
WHTJCmdGCSUDPSocket.StopListening();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
GetDlgItem(IDC_BTN_TJCmd_Connect)->SetWindowTextA("连接");
|
|
|
|
|
}
|
|
|
|
|
else if(str == _T("连接")){
|
|
|
|
|
WHTJCmdGCSUDPSocket.SetCallBack(NULL,nullptr);
|
|
|
|
|
WHTJCmdGCSUDPSocket.SetParams(_T("0.0.0.0"),m_WHTJCmdUDPLocalPort,m_WHTJCmdUDPRemoteIPStr,m_WHTJCmdUDPRemotePort);
|
|
|
|
|
if(!WHTJCmdGCSUDPSocket.StartListening())
|
|
|
|
|
{
|
|
|
|
|
MessageBox("吊舱UDP通信端口打开失败!");
|
|
|
|
|
}
|
|
|
|
|
GetDlgItem(IDC_BTN_TJCmd_Connect)->SetWindowTextA("断开");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|