// SetSurveillance.cpp : implementation file // #include "stdafx.h" #include "StoneU_HC_OCX.h" #include "SetSurveillance.h" #include "AddSvrInfo.h" #include "RemoteParamsCfg.h" #include "ServerInfo.h" #include "ChannelInfo.h" #include "WorkState.h" #include "RemoteKey.h" #include "RemoteLog.h" #include "RemoteUpgrade.h" #include "FormatDisk.h" #include "MyOutput.h" #include "Global.h" #include "mdlProject.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif DWORD g_dwSwitch = 0; extern void WriteSurveillanceConfig(); ///////////////////////////////////////////////////////////////////////////// // CSetSurveillance dialog CSetSurveillance::CSetSurveillance(CWnd* pParent /*=NULL*/) : CDialog(CSetSurveillance::IDD, pParent) { //{{AFX_DATA_INIT(CSetSurveillance) //}}AFX_DATA_INIT } void CSetSurveillance::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CSetSurveillance) DDX_Control(pDX, IDC_TREE2, m_treesel); DDX_Control(pDX, IDC_TREE1, m_treeall); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CSetSurveillance, CDialog) //{{AFX_MSG_MAP(CSetSurveillance) ON_BN_CLICKED(IDC_BUTTONCHOOSE, OnButtonchoose) ON_BN_CLICKED(IDC_BUTTONDOWN, OnButtondown) ON_BN_CLICKED(IDC_BUTTONUNCHOOSE, OnButtonunchoose) ON_BN_CLICKED(IDC_BUTTONUP, OnButtonup) ON_BN_CLICKED(IDC_LOGIN, OnLogin) ON_BN_CLICKED(IDC_LOGOUT, OnLogout) ON_BN_CLICKED(IDC_SERVERCFG, OnServercfg) ON_NOTIFY(NM_DBLCLK, IDC_TREE2, OnDblclkTree2) ON_NOTIFY(NM_DBLCLK, IDC_TREE1, OnDblclkTree1) ON_BN_CLICKED(IDC_SERVERSTATE, OnServerstate) ON_BN_CLICKED(IDSETREMOTEOK, OnSetremoteok) ON_BN_CLICKED(IDC_KEYCLICK, OnKeyclick) ON_BN_CLICKED(IDC_REMOTELOG, OnRemotelog) ON_NOTIFY(TVN_DELETEITEM, IDC_TREE1, OnDeleteitemTree1) ON_NOTIFY(TVN_DELETEITEM, IDC_TREE2, OnDeleteitemTree2) ON_BN_CLICKED(IDC_CHECKTIME, OnChecktime) ON_BN_CLICKED(IDC_REBOOT, OnReboot) ON_BN_CLICKED(IDC_REMOTEUPGRADE, OnRemoteupgrade) ON_BN_CLICKED(IDC_FORMATDISK, OnFormatdisk) ON_NOTIFY(NM_RCLICK, IDC_TREE1, OnRclickTree1) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CSetSurveillance message handlers BOOL CSetSurveillance::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here CRect rc(0, 0, 0, 0); GetParent()->GetClientRect(&rc); ((CTabCtrl*)GetParent())->AdjustRect(FALSE, &rc); MoveWindow(&rc); // ReadSurveillanceConfig(); //by zxy 2004/05/20 F_IniTreeall(); m_bSaveflag = FALSE; return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CSetSurveillance::OnButtonchoose() { // TODO: Add your control notification handler code here HTREEITEM node1,node2,node3; int i,j,iNum; CString sTemp; node1=m_treeall.GetSelectedItem(); if (node1==NULL) return; node2=m_treeall.GetParentItem(node1); if(node2==NULL) { node2=m_treeall.GetChildItem(node1); while (node2!=NULL) { i=m_treeall.GetItemData(node1); j=m_treeall.GetItemData(node2); iNum=i*100+j; sTemp.Format("%s(%s)",g_pNewclientDlg->m_Serverinfo[i].m_csServerName,g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName); node3=m_treesel.InsertItem(sTemp,1,1,TVI_ROOT); m_treesel.SetItemData(node3,iNum); g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed = TRUE; node3=node2; node2=m_treeall.GetNextSiblingItem(node2); m_treeall.DeleteItem(node3); if (g_pNewclientDlg->m_nSurveillanceNumber >= MAXNUMBER) { MessageBox("最多可添加512路,路数达到最大!", "温馨提示", MB_ICONINFORMATION); return; } g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence = g_pNewclientDlg->m_nSurveillanceNumber; //该监控点的顺序 g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_bChoosed = g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csChanName = g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csMultiIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csMultiIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csPassword = g_pNewclientDlg->m_Allipinfo[i][j].m_csPassword; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csUser = g_pNewclientDlg->m_Allipinfo[i][j].m_csUser; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAddress = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAddress; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAlarmlevel = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAlarmlevel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwMultiIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwMultiIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwProtocol = g_pNewclientDlg->m_Allipinfo[i][j].m_dwProtocol; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannel = g_pNewclientDlg->m_Allipinfo[i][j].m_iChannel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iSequence = g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_lServerID = g_pNewclientDlg->m_Allipinfo[i][j].m_lServerID; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wJMQtype = g_pNewclientDlg->m_Allipinfo[i][j].m_wJMQtype; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wServerport = g_pNewclientDlg->m_Allipinfo[i][j].m_wServerport; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iServerNum = i; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannelNum = j; g_pNewclientDlg->m_nSurveillanceNumber++; } } else { i=m_treeall.GetItemData(node2); j=m_treeall.GetItemData(node1); iNum=i*100+j; sTemp.Format("%s(%s)",g_pNewclientDlg->m_Serverinfo[i].m_csServerName,g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName); node3=m_treesel.InsertItem(sTemp,1,1,TVI_ROOT); m_treesel.SetItemData(node3,iNum); g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed = TRUE; m_treeall.DeleteItem(node1); if (g_pNewclientDlg->m_nSurveillanceNumber >= MAXNUMBER) { MessageBox("最多可添加512路,路数达到最大!", "温馨提示", MB_ICONINFORMATION); return; } g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence = g_pNewclientDlg->m_nSurveillanceNumber; //该监控点的顺序 g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_bChoosed = g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csChanName = g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csMultiIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csMultiIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csPassword = g_pNewclientDlg->m_Allipinfo[i][j].m_csPassword; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csUser = g_pNewclientDlg->m_Allipinfo[i][j].m_csUser; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAddress = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAddress; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAlarmlevel = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAlarmlevel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwMultiIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwMultiIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwProtocol = g_pNewclientDlg->m_Allipinfo[i][j].m_dwProtocol; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannel = g_pNewclientDlg->m_Allipinfo[i][j].m_iChannel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iSequence = g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_lServerID = g_pNewclientDlg->m_Allipinfo[i][j].m_lServerID; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wJMQtype = g_pNewclientDlg->m_Allipinfo[i][j].m_wJMQtype; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wServerport = g_pNewclientDlg->m_Allipinfo[i][j].m_wServerport; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iServerNum = i; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannelNum = j; g_pNewclientDlg->m_nSurveillanceNumber++; } } void CSetSurveillance::OnButtondown() { // TODO: Add your control notification handler code here HTREEITEM node1,node2; int num1, num2; CString sTemp; node1=m_treesel.GetSelectedItem(); if(node1==NULL) { return; } node2=m_treesel.GetNextSiblingItem(node1); if(node2==NULL) { return; } num1 = m_treesel.GetItemData(node1); num2 = m_treesel.GetItemData(node2); m_treesel.SetItemData(node1,num2); m_treesel.SetItemData(node2,num1); sTemp.Format("%s",m_treesel.GetItemText(node1)); m_treesel.SetItemText(node1,m_treesel.GetItemText(node2)); m_treesel.SetItemText(node2,sTemp); m_treesel.SelectItem(node2); Exchange(num1, num2); } void CSetSurveillance::OnButtonunchoose() { // TODO: Add your control notification handler code here HTREEITEM node1,node2,node3; int i,j,iNum, iTemp; node1=m_treesel.GetSelectedItem(); if(node1==NULL) return; iNum=m_treesel.GetItemData(node1); j=iNum % 100; i=(iNum-j)/100; iTemp = g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence; if(iTemp < MAXVIEWNUM) { if(g_pNewclientDlg->m_MyOutput[iTemp].m_iPlayhandle != -1) { MessageBox("请先停止网络预览,然后再从播放列表中移开!", "温馨提示", MB_ICONINFORMATION); return; } } node2=m_treeall.GetRootItem(); while(node2!=NULL) { iTemp=m_treeall.GetItemData(node2); if(iTemp==i) { node3=m_treeall.InsertItem(g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName,1,1,node2); m_treeall.SetItemData(node3,j); m_treeall.Expand(node2,TVE_EXPAND); break; } node2=m_treeall.GetNextSiblingItem(node2); } g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed = FALSE; g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence = -1; m_treesel.DeleteItem(node1); g_pNewclientDlg->m_nSurveillanceNumber--; int n; for(n=iTemp; nm_nSurveillanceNumber-1; n++) { g_pNewclientDlg->m_Selipinfo[n].m_bChoosed = g_pNewclientDlg->m_Selipinfo[n+1].m_bChoosed; g_pNewclientDlg->m_Selipinfo[n].m_csChanName = g_pNewclientDlg->m_Selipinfo[n+1].m_csChanName; g_pNewclientDlg->m_Selipinfo[n].m_csIP = g_pNewclientDlg->m_Selipinfo[n+1].m_csIP; g_pNewclientDlg->m_Selipinfo[n].m_csMultiIP = g_pNewclientDlg->m_Selipinfo[n+1].m_csMultiIP; g_pNewclientDlg->m_Selipinfo[n].m_csPassword = g_pNewclientDlg->m_Selipinfo[n+1].m_csPassword; g_pNewclientDlg->m_Selipinfo[n].m_csUser = g_pNewclientDlg->m_Selipinfo[n+1].m_csUser; g_pNewclientDlg->m_Selipinfo[n].m_dwAddress = g_pNewclientDlg->m_Selipinfo[n+1].m_dwAddress; g_pNewclientDlg->m_Selipinfo[n].m_dwAlarmlevel = g_pNewclientDlg->m_Selipinfo[n+1].m_dwAlarmlevel; g_pNewclientDlg->m_Selipinfo[n].m_dwIPvalue = g_pNewclientDlg->m_Selipinfo[n+1].m_dwIPvalue; g_pNewclientDlg->m_Selipinfo[n].m_dwMultiIPvalue = g_pNewclientDlg->m_Selipinfo[n+1].m_dwMultiIPvalue; g_pNewclientDlg->m_Selipinfo[n].m_dwProtocol = g_pNewclientDlg->m_Selipinfo[n+1].m_dwProtocol; g_pNewclientDlg->m_Selipinfo[n].m_iChannel = g_pNewclientDlg->m_Selipinfo[n+1].m_iChannel; g_pNewclientDlg->m_Selipinfo[n].m_iSequence = g_pNewclientDlg->m_Selipinfo[n+1].m_iSequence; g_pNewclientDlg->m_Selipinfo[n].m_lServerID = g_pNewclientDlg->m_Selipinfo[n+1].m_lServerID; g_pNewclientDlg->m_Selipinfo[n].m_wJMQtype = g_pNewclientDlg->m_Selipinfo[n+1].m_wJMQtype; g_pNewclientDlg->m_Selipinfo[n].m_wServerport = g_pNewclientDlg->m_Selipinfo[n+1].m_wServerport; g_pNewclientDlg->m_Selipinfo[n].m_iServerNum = g_pNewclientDlg->m_Selipinfo[n+1].m_iServerNum; g_pNewclientDlg->m_Selipinfo[n].m_iChannelNum = g_pNewclientDlg->m_Selipinfo[n+1].m_iChannelNum; g_pNewclientDlg->m_Allipinfo[g_pNewclientDlg->m_Selipinfo[n].m_iServerNum][g_pNewclientDlg->m_Selipinfo[n].m_iChannelNum].m_iSequence = n; } g_pNewclientDlg->m_Selipinfo[n].m_bChoosed = FALSE; g_pNewclientDlg->m_Selipinfo[n].m_iChannel = -1; g_pNewclientDlg->m_Selipinfo[n].m_iSequence = -1; g_pNewclientDlg->m_Selipinfo[n].m_lServerID = -1; g_pNewclientDlg->m_Selipinfo[n].m_iServerNum = -1; g_pNewclientDlg->m_Selipinfo[n].m_iChannelNum = -1; } void CSetSurveillance::OnButtonup() { // TODO: Add your control notification handler code here HTREEITEM node1,node2; int num1, num2;; CString sTemp; node1=m_treesel.GetSelectedItem(); if(node1==NULL) { return; } node2=m_treesel.GetPrevSiblingItem(node1); if(node2==NULL) { return; } num1 = m_treesel.GetItemData(node1); num2 = m_treesel.GetItemData(node2); m_treesel.SetItemData(node1,num2); m_treesel.SetItemData(node2,num1); sTemp.Format("%s",m_treesel.GetItemText(node1)); m_treesel.SetItemText(node1,m_treesel.GetItemText(node2)); m_treesel.SetItemText(node2,sTemp); m_treesel.SelectItem(node2); Exchange(num1, num2); } void CSetSurveillance::Exchange(int num1, int num2) { int i,j,k,n; int iSequence1,iSequence2; IP_INFO Temp; j = num1 % 100; i = (num1-j)/100; iSequence1 = g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence; n = num2 % 100; k = (num2-n)/100; iSequence2 = g_pNewclientDlg->m_Allipinfo[k][n].m_iSequence; g_pNewclientDlg->m_Allipinfo[k][n].m_iSequence = iSequence1; g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence = iSequence2; Temp.m_bChoosed = g_pNewclientDlg->m_Selipinfo[iSequence1].m_bChoosed; Temp.m_csChanName = g_pNewclientDlg->m_Selipinfo[iSequence1].m_csChanName; Temp.m_csIP = g_pNewclientDlg->m_Selipinfo[iSequence1].m_csIP; Temp.m_csMultiIP = g_pNewclientDlg->m_Selipinfo[iSequence1].m_csMultiIP; Temp.m_csPassword = g_pNewclientDlg->m_Selipinfo[iSequence1].m_csPassword; Temp.m_csUser = g_pNewclientDlg->m_Selipinfo[iSequence1].m_csUser; Temp.m_dwAddress = g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwAddress; Temp.m_dwAlarmlevel = g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwAlarmlevel; Temp.m_dwIPvalue = g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwIPvalue; Temp.m_dwMultiIPvalue = g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwMultiIPvalue; Temp.m_dwProtocol = g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwProtocol; Temp.m_iChannel = g_pNewclientDlg->m_Selipinfo[iSequence1].m_iChannel; Temp.m_iSequence = g_pNewclientDlg->m_Selipinfo[iSequence1].m_iSequence; Temp.m_lServerID = g_pNewclientDlg->m_Selipinfo[iSequence1].m_lServerID; Temp.m_wJMQtype = g_pNewclientDlg->m_Selipinfo[iSequence1].m_wJMQtype; Temp.m_wServerport = g_pNewclientDlg->m_Selipinfo[iSequence1].m_wServerport; Temp.m_iServerNum = i; Temp.m_iChannelNum = j; //// if(iSequence2 == -1) { iSequence2 = -1; } g_pNewclientDlg->m_Selipinfo[iSequence1].m_bChoosed = g_pNewclientDlg->m_Selipinfo[iSequence2].m_bChoosed; g_pNewclientDlg->m_Selipinfo[iSequence1].m_csChanName = g_pNewclientDlg->m_Selipinfo[iSequence2].m_csChanName; g_pNewclientDlg->m_Selipinfo[iSequence1].m_csIP = g_pNewclientDlg->m_Selipinfo[iSequence2].m_csIP; g_pNewclientDlg->m_Selipinfo[iSequence1].m_csMultiIP = g_pNewclientDlg->m_Selipinfo[iSequence2].m_csMultiIP; g_pNewclientDlg->m_Selipinfo[iSequence1].m_csPassword = g_pNewclientDlg->m_Selipinfo[iSequence2].m_csPassword; g_pNewclientDlg->m_Selipinfo[iSequence1].m_csUser = g_pNewclientDlg->m_Selipinfo[iSequence2].m_csUser; g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwAddress = g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwAddress; g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwAlarmlevel = g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwAlarmlevel; g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwIPvalue = g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwIPvalue; g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwMultiIPvalue = g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwMultiIPvalue; g_pNewclientDlg->m_Selipinfo[iSequence1].m_dwProtocol = g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwProtocol; g_pNewclientDlg->m_Selipinfo[iSequence1].m_iChannel = g_pNewclientDlg->m_Selipinfo[iSequence2].m_iChannel; g_pNewclientDlg->m_Selipinfo[iSequence1].m_iSequence = g_pNewclientDlg->m_Selipinfo[iSequence2].m_iSequence; g_pNewclientDlg->m_Selipinfo[iSequence1].m_lServerID = g_pNewclientDlg->m_Selipinfo[iSequence2].m_lServerID; g_pNewclientDlg->m_Selipinfo[iSequence1].m_wJMQtype = g_pNewclientDlg->m_Selipinfo[iSequence2].m_wJMQtype; g_pNewclientDlg->m_Selipinfo[iSequence1].m_wServerport = g_pNewclientDlg->m_Selipinfo[iSequence2].m_wServerport; g_pNewclientDlg->m_Selipinfo[iSequence1].m_iServerNum = k; g_pNewclientDlg->m_Selipinfo[iSequence1].m_iChannelNum = n; g_pNewclientDlg->m_Selipinfo[iSequence2].m_bChoosed = Temp.m_bChoosed; g_pNewclientDlg->m_Selipinfo[iSequence2].m_csChanName = Temp.m_csChanName; g_pNewclientDlg->m_Selipinfo[iSequence2].m_csIP = Temp.m_csIP; g_pNewclientDlg->m_Selipinfo[iSequence2].m_csMultiIP = Temp.m_csMultiIP; g_pNewclientDlg->m_Selipinfo[iSequence2].m_csPassword = Temp.m_csPassword; g_pNewclientDlg->m_Selipinfo[iSequence2].m_csUser = Temp.m_csUser; g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwAddress = Temp.m_dwAddress; g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwAlarmlevel = Temp.m_dwAlarmlevel; g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwIPvalue = Temp.m_dwIPvalue; g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwMultiIPvalue = Temp.m_dwMultiIPvalue; g_pNewclientDlg->m_Selipinfo[iSequence2].m_dwProtocol = Temp.m_dwProtocol; g_pNewclientDlg->m_Selipinfo[iSequence2].m_iChannel = Temp.m_iChannel; g_pNewclientDlg->m_Selipinfo[iSequence2].m_iSequence = Temp.m_iSequence; g_pNewclientDlg->m_Selipinfo[iSequence2].m_lServerID = Temp.m_lServerID; g_pNewclientDlg->m_Selipinfo[iSequence2].m_wJMQtype = Temp.m_wJMQtype; g_pNewclientDlg->m_Selipinfo[iSequence2].m_wServerport = Temp.m_wServerport; g_pNewclientDlg->m_Selipinfo[iSequence2].m_iServerNum = i; g_pNewclientDlg->m_Selipinfo[iSequence2].m_iChannelNum = j; } void CSetSurveillance::OnLogin() { // TODO: Add your control notification handler code here int i; for(i = 0; i < MAXIPNUMBER; i++) { if(g_pNewclientDlg->m_Serverinfo[i].m_iServerChannelNumber == -1) { CAddSvrInfo AddSvrInfoDlg; AddSvrInfoDlg.m_iServerNum = i; AddSvrInfoDlg.DoModal(); if(AddSvrInfoDlg.m_bChanged) { TRACE("changed the g_pNewclientDlg->m_Serverinfo[%d].", i); F_IniTreeall(); } return; } } MessageBox("超过最大服务器数,请先删除再添加!", "温馨提示", MB_ICONINFORMATION); } void CSetSurveillance::OnLogout() { // TODO: Add your control notification handler code here HTREEITEM node1, node2; int i, isel, j, k, iNum; node1 = m_treeall.GetSelectedItem(); if(node1 == NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION); return; } node2 = m_treeall.GetParentItem(node1); if(node2 == NULL) { if(IDOK != MessageBox("确实要删除该视频服务器吗?","警告!",MB_OKCANCEL|MB_ICONWARNING)) return; isel = m_treeall.GetItemData(node1); if(!NET_DVR_Logout(g_pNewclientDlg->m_Serverinfo[isel].m_lServerID)) { CString sTemp; sTemp.Format("ERROR: %s NET_DVR_Logout = %d",g_pNewclientDlg->m_Serverinfo[isel].m_csServerIP, NET_DVR_GetLastError()); TRACE(sTemp); } g_pNewclientDlg->m_Serverinfo[isel].m_lServerID = -1; TRACE("delete server[%d]", isel); for(i = isel; i < MAXIPNUMBER - 1; i++) { j = i + 1; if(g_pNewclientDlg->m_Serverinfo[j].m_iServerChannelNumber == -1) break; //g_pNewclientDlg->m_Serverinfo[j]开始都是空的; else { g_pNewclientDlg->m_Serverinfo[i].m_lStartChannel = g_pNewclientDlg->m_Serverinfo[j].m_lStartChannel; g_pNewclientDlg->m_Serverinfo[i].m_csSerialNumber = g_pNewclientDlg->m_Serverinfo[j].m_csSerialNumber; //序列号 g_pNewclientDlg->m_Serverinfo[i].m_dwAlarmInNum = g_pNewclientDlg->m_Serverinfo[j].m_dwAlarmInNum; //报警输入个数 g_pNewclientDlg->m_Serverinfo[i].m_dwAlarmOutNum = g_pNewclientDlg->m_Serverinfo[j].m_dwAlarmOutNum; //报警输出个数 g_pNewclientDlg->m_Serverinfo[i].m_dwDiskNum = g_pNewclientDlg->m_Serverinfo[j].m_dwDiskNum; //硬盘个数 g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminName = g_pNewclientDlg->m_Serverinfo[j].m_csServerAdminName; g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminPasswd = g_pNewclientDlg->m_Serverinfo[j].m_csServerAdminPasswd; g_pNewclientDlg->m_Serverinfo[i].m_csServerIP = g_pNewclientDlg->m_Serverinfo[j].m_csServerIP; g_pNewclientDlg->m_Serverinfo[i].m_csServerMultiIP = g_pNewclientDlg->m_Serverinfo[j].m_csServerMultiIP; g_pNewclientDlg->m_Serverinfo[i].m_dwServerMultiIPvalue = g_pNewclientDlg->m_Serverinfo[j].m_dwServerMultiIPvalue; g_pNewclientDlg->m_Serverinfo[i].m_csServerName = g_pNewclientDlg->m_Serverinfo[j].m_csServerName; g_pNewclientDlg->m_Serverinfo[i].m_dwServerIPvalue = g_pNewclientDlg->m_Serverinfo[j].m_dwServerIPvalue; g_pNewclientDlg->m_Serverinfo[i].m_iServerChannelNumber = g_pNewclientDlg->m_Serverinfo[j].m_iServerChannelNumber; g_pNewclientDlg->m_Serverinfo[i].m_wServerPort = g_pNewclientDlg->m_Serverinfo[j].m_wServerPort; g_pNewclientDlg->m_Serverinfo[i].m_wServerType = g_pNewclientDlg->m_Serverinfo[j].m_wServerType; g_pNewclientDlg->m_Serverinfo[i].m_lServerID = g_pNewclientDlg->m_Serverinfo[j].m_lServerID; for(k = 0; k < MAXCHANNUM; k++) { g_pNewclientDlg->m_Allipinfo[i][k].m_iServerNum = i; g_pNewclientDlg->m_Allipinfo[i][k].m_iChannelNum = k; g_pNewclientDlg->m_Allipinfo[i][k].m_iSequence = g_pNewclientDlg->m_Allipinfo[j][k].m_iSequence; g_pNewclientDlg->m_Allipinfo[i][k].m_bChoosed = g_pNewclientDlg->m_Allipinfo[j][k].m_bChoosed; g_pNewclientDlg->m_Allipinfo[i][k].m_csIP = g_pNewclientDlg->m_Allipinfo[j][k].m_csIP; g_pNewclientDlg->m_Allipinfo[i][k].m_csMultiIP = g_pNewclientDlg->m_Allipinfo[j][k].m_csMultiIP; g_pNewclientDlg->m_Allipinfo[i][k].m_csChanName = g_pNewclientDlg->m_Allipinfo[j][k].m_csChanName; g_pNewclientDlg->m_Allipinfo[i][k].m_csPassword = g_pNewclientDlg->m_Allipinfo[j][k].m_csPassword; g_pNewclientDlg->m_Allipinfo[i][k].m_csUser = g_pNewclientDlg->m_Allipinfo[j][k].m_csUser; g_pNewclientDlg->m_Allipinfo[i][k].m_dwAddress = g_pNewclientDlg->m_Allipinfo[j][k].m_dwAddress; g_pNewclientDlg->m_Allipinfo[i][k].m_dwAlarmlevel = g_pNewclientDlg->m_Allipinfo[j][k].m_dwAlarmlevel; g_pNewclientDlg->m_Allipinfo[i][k].m_dwIPvalue = g_pNewclientDlg->m_Allipinfo[j][k].m_dwIPvalue; g_pNewclientDlg->m_Allipinfo[i][k].m_dwMultiIPvalue = g_pNewclientDlg->m_Allipinfo[j][k].m_dwMultiIPvalue; g_pNewclientDlg->m_Allipinfo[i][k].m_dwProtocol = g_pNewclientDlg->m_Allipinfo[j][k].m_dwProtocol; g_pNewclientDlg->m_Allipinfo[i][k].m_iChannel = g_pNewclientDlg->m_Allipinfo[j][k].m_iChannel; g_pNewclientDlg->m_Allipinfo[i][k].m_wJMQtype = g_pNewclientDlg->m_Allipinfo[j][k].m_wJMQtype; g_pNewclientDlg->m_Allipinfo[i][k].m_wServerport = g_pNewclientDlg->m_Allipinfo[j][k].m_wServerport; g_pNewclientDlg->m_Allipinfo[i][k].m_lServerID = g_pNewclientDlg->m_Allipinfo[j][k].m_lServerID; } } } g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminName.Format(_T("")); g_pNewclientDlg->m_Serverinfo[i].m_iServerChannelNumber = -1; g_pNewclientDlg->m_Serverinfo[i].m_wServerPort = 8000; g_pNewclientDlg->m_Serverinfo[i].m_csServerName.Format(_T("")); for(k = 0; k < MAXCHANNUM; k++) { g_pNewclientDlg->m_Allipinfo[i][k].m_bChoosed = FALSE; g_pNewclientDlg->m_Allipinfo[i][k].m_iChannel = -1; g_pNewclientDlg->m_Allipinfo[i][k].m_iServerNum = -1; g_pNewclientDlg->m_Allipinfo[i][k].m_iChannelNum = -1; } F_IniTreeall(); node1 = m_treesel.GetRootItem(); g_pNewclientDlg->m_nSurveillanceNumber = 0; while(node1 != NULL) { iNum = m_treesel.GetItemData(node1); j = iNum % 100; i = (iNum - j) / 100; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_bChoosed = g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csChanName = g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csMultiIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csMultiIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csPassword = g_pNewclientDlg->m_Allipinfo[i][j].m_csPassword; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csUser = g_pNewclientDlg->m_Allipinfo[i][j].m_csUser; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAddress = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAddress; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAlarmlevel = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAlarmlevel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwMultiIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwMultiIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwProtocol = g_pNewclientDlg->m_Allipinfo[i][j].m_dwProtocol; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannel = g_pNewclientDlg->m_Allipinfo[i][j].m_iChannel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iSequence = g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_lServerID = g_pNewclientDlg->m_Allipinfo[i][j].m_lServerID; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wJMQtype = g_pNewclientDlg->m_Allipinfo[i][j].m_wJMQtype; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wServerport = g_pNewclientDlg->m_Allipinfo[i][j].m_wServerport; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iServerNum = i; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannelNum = j; g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence = g_pNewclientDlg->m_nSurveillanceNumber; //该监控点的顺序 g_pNewclientDlg->m_nSurveillanceNumber++; if (g_pNewclientDlg->m_nSurveillanceNumber >= MAXNUMBER) { MessageBox("最多可添加512路,路数达到最大!", "温馨提示", MB_ICONINFORMATION); return; } node1 = m_treesel.GetNextSiblingItem(node1); } } } void CSetSurveillance::OnServercfg() { // TODO: Add your control notification handler code here HTREEITEM hSel, hParent; int i; CRemoteParamsCfg RemoteParamsCfgDlg; for (i=0;im_Serverinfo[i].m_csServerName.IsEmpty()) break; RemoteParamsCfgDlg.m_dvrName += (g_pNewclientDlg->m_Serverinfo[i].m_csServerName + "!@#$%^"); } RemoteParamsCfgDlg.m_dvrSelect = -1; hSel=m_treeall.GetSelectedItem(); if(hSel==NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION);; return; // RemoteParamsCfgDlg.m_dvrSelect = -1; // RemoteParamsCfgDlg.DoModal(); } else { hParent = m_treeall.GetParentItem(hSel); if(hParent == NULL) { i = m_treeall.GetItemData(hSel); RemoteParamsCfgDlg.m_ip = g_pNewclientDlg->m_Serverinfo[i].m_csServerIP; RemoteParamsCfgDlg.m_Username = g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminName; RemoteParamsCfgDlg.m_Password = g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminPasswd; RemoteParamsCfgDlg.m_iServerport = g_pNewclientDlg->m_Serverinfo[i].m_wServerPort; RemoteParamsCfgDlg.m_lServerID = g_pNewclientDlg->m_Serverinfo[i].m_lServerID; RemoteParamsCfgDlg.m_iChannelnumber = g_pNewclientDlg->m_Serverinfo[i].m_iServerChannelNumber; RemoteParamsCfgDlg.m_iServertype = g_pNewclientDlg->m_Serverinfo[i].m_wServerType; RemoteParamsCfgDlg.m_lStartChannel = g_pNewclientDlg->m_Serverinfo[i].m_lStartChannel; RemoteParamsCfgDlg.m_dwAlarmInNum = g_pNewclientDlg->m_Serverinfo[i].m_dwAlarmInNum; RemoteParamsCfgDlg.m_dwAlarmOutNum = g_pNewclientDlg->m_Serverinfo[i].m_dwAlarmOutNum; RemoteParamsCfgDlg.m_dwDiskNum = g_pNewclientDlg->m_Serverinfo[i].m_dwDiskNum; if(strcmp(g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminName, "admin")==0) { RemoteParamsCfgDlg.m_bSuperUser = TRUE; } else { RemoteParamsCfgDlg.m_bSuperUser = FALSE; } RemoteParamsCfgDlg.m_dvrSelect = i; RemoteParamsCfgDlg.m_iServer = i; RemoteParamsCfgDlg.DoModal(); } } } void CSetSurveillance::OnDblclkTree2(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here HTREEITEM node1; CString sTemp; int i,j,iNum; node1=m_treesel.GetSelectedItem(); if (node1==NULL) { return; } iNum=m_treesel.GetItemData(node1); CChannelInfo ChannelInfoDlg; j=iNum % 100; i=(iNum-j)/100; ChannelInfoDlg.m_iServerNum=i; ChannelInfoDlg.m_iChannelNum=j; ChannelInfoDlg.DoModal(); sTemp.Format("%s(%s)",g_pNewclientDlg->m_Serverinfo[i].m_csServerName,g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName); m_treesel.SetItemText(node1,sTemp); *pResult = 0; } void CSetSurveillance::OnDblclkTree1(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here HTREEITEM node1,node2; int i,j; CString sTemp; node1=m_treeall.GetSelectedItem(); if(node1==NULL) { return; } node2=m_treeall.GetParentItem(node1); if(node2==NULL) { i=m_treeall.GetItemData(node1); CServerInfo ServerInfoDlg; ServerInfoDlg.m_iServerNum=i; ServerInfoDlg.DoModal(); } else { i=m_treeall.GetItemData(node2); j=m_treeall.GetItemData(node1); CChannelInfo ChannelInfoDlg; ChannelInfoDlg.m_iServerNum = i; ChannelInfoDlg.m_iChannelNum = j; ChannelInfoDlg.DoModal(); m_treeall.SetItemText(node1,g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName); } *pResult = 0; } void CSetSurveillance::F_IniTreeall() { HTREEITEM node1,node2; int i,j,k,iNum; CString sTemp; int iChannelIndex[MAXNUMBER]; for(i = 0; i < MAXNUMBER; i++) iChannelIndex[i] = -1; m_treeall.DeleteAllItems(); m_treesel.DeleteAllItems(); for(i = 0; i < MAXIPNUMBER; i++) { if(g_pNewclientDlg->m_Serverinfo[i].m_iServerChannelNumber >= 0) { sTemp.Format("%s", g_pNewclientDlg->m_Serverinfo[i].m_csServerName); node1=m_treeall.InsertItem(sTemp,0,0,TVI_ROOT); m_treeall.SetItemData(node1,i); for(j = 0; j < MAXCHANNUM; j++) { if(g_pNewclientDlg->m_Allipinfo[i][j].m_iChannel >= 0) { if(!g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed) { sTemp.Format("%s", g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName); node2=m_treeall.InsertItem(sTemp,1,1,node1); m_treeall.SetItemData(node2,j); } else { iChannelIndex[g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence] = i*100 + j; } } } } } for(k = 0; k < MAXNUMBER; k++) { if(iChannelIndex[k] >= 0) { j = iChannelIndex[k] % 100; i = (iChannelIndex[k] - j) / 100; iNum = i * 100 + j; sTemp.Format("%s(%s)",g_pNewclientDlg->m_Serverinfo[i].m_csServerName, g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName); node2 = m_treesel.InsertItem(sTemp,1,1,TVI_ROOT); m_treesel.SetItemData(node2, iNum); } } } void CSetSurveillance::F_Save() { HTREEITEM node1; int i, j, iNum; node1 = m_treesel.GetRootItem(); g_pNewclientDlg->m_nSurveillanceNumber = 0; while(node1 != NULL) { iNum = m_treesel.GetItemData(node1); j = iNum % 100; i = (iNum - j) / 100; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_bChoosed = g_pNewclientDlg->m_Allipinfo[i][j].m_bChoosed; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csChanName = g_pNewclientDlg->m_Allipinfo[i][j].m_csChanName; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csMultiIP = g_pNewclientDlg->m_Allipinfo[i][j].m_csMultiIP; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csPassword = g_pNewclientDlg->m_Allipinfo[i][j].m_csPassword; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_csUser = g_pNewclientDlg->m_Allipinfo[i][j].m_csUser; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAddress = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAddress; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwAlarmlevel = g_pNewclientDlg->m_Allipinfo[i][j].m_dwAlarmlevel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwMultiIPvalue = g_pNewclientDlg->m_Allipinfo[i][j].m_dwMultiIPvalue; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_dwProtocol = g_pNewclientDlg->m_Allipinfo[i][j].m_dwProtocol; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannel = g_pNewclientDlg->m_Allipinfo[i][j].m_iChannel; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iSequence = g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_lServerID = g_pNewclientDlg->m_Allipinfo[i][j].m_lServerID; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wJMQtype = g_pNewclientDlg->m_Allipinfo[i][j].m_wJMQtype; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_wServerport = g_pNewclientDlg->m_Allipinfo[i][j].m_wServerport; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iServerNum = i; g_pNewclientDlg->m_Selipinfo[g_pNewclientDlg->m_nSurveillanceNumber].m_iChannelNum = j; g_pNewclientDlg->m_Allipinfo[i][j].m_iSequence = g_pNewclientDlg->m_nSurveillanceNumber; //该监控点的顺序 g_pNewclientDlg->m_nSurveillanceNumber++; if (g_pNewclientDlg->m_nSurveillanceNumber >= MAXNUMBER) { MessageBox("最多可添加512路,路数达到最大!", "温馨提示", MB_ICONINFORMATION); return; } node1 = m_treesel.GetNextSiblingItem(node1); } WriteSurveillanceConfig(); } void CSetSurveillance::OnServerstate() { // TODO: Add your control notification handler code here CWorkState dlg; HTREEITEM hSel, hParent; int i; hSel=m_treeall.GetSelectedItem(); if(hSel==NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION); return; } hParent = m_treeall.GetParentItem(hSel); if(hParent == NULL) { i = m_treeall.GetItemData(hSel); dlg.m_csServerName = g_pNewclientDlg->m_Serverinfo[i].m_csServerName; dlg.m_lServerID = g_pNewclientDlg->m_Serverinfo[i].m_lServerID; dlg.m_dwDiskNum = g_pNewclientDlg->m_Serverinfo[i].m_dwDiskNum; dlg.m_iChannelnumber = g_pNewclientDlg->m_Serverinfo[i].m_iServerChannelNumber; dlg.DoModal(); } } void CSetSurveillance::OnSetremoteok() { // TODO: Add your control notification handler code here F_Save(); m_bSaveflag = TRUE; } void CSetSurveillance::OnCancel() { // TODO: Add extra cleanup here // CDialog::OnCancel(); } void CSetSurveillance::OnKeyclick() { // TODO: Add your control notification handler code here HTREEITEM hSel, hParent; int i; CRemoteKey Dlg; UpdateData(TRUE); hSel=m_treeall.GetSelectedItem(); if(hSel==NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION); return; } hParent = m_treeall.GetParentItem(hSel); if(hParent == NULL) { i = m_treeall.GetItemData(hSel); Dlg.m_lServerID = g_pNewclientDlg->m_Serverinfo[i].m_lServerID; Dlg.DoModal(); } } void CSetSurveillance::OnRemotelog() { // TODO: Add your control notification handler code here CRemoteLog Dlg; Dlg.DoModal(); } void CSetSurveillance::OnDeleteitemTree1(NMHDR* pNMHDR, LRESULT* pResult) { NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR; // TODO: Add your control notification handler code here *pResult = 0; } void CSetSurveillance::OnDeleteitemTree2(NMHDR* pNMHDR, LRESULT* pResult) { NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR; // TODO: Add your control notification handler code here *pResult = 0; } void CSetSurveillance::OnChecktime() { // TODO: Add your control notification handler code here HTREEITEM hSel, hParent; int i; hSel=m_treeall.GetSelectedItem(); if(hSel==NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION); return; } hParent = m_treeall.GetParentItem(hSel); if(hParent == NULL) { i = m_treeall.GetItemData(hSel); //在此调用此函数重置时区,以修正时区调整之后由于程序只在初始化时获取时区而造成不能随之调整的问题 _tzset(); CTime time1 = CTime::GetCurrentTime(); NET_DVR_TIME CurTime; CurTime.dwYear = time1.GetYear(); CurTime.dwMonth = time1.GetMonth(); CurTime.dwDay = time1.GetDay(); CurTime.dwHour = time1.GetHour(); CurTime.dwMinute = time1.GetMinute(); CurTime.dwSecond = time1.GetSecond(); if(NET_DVR_SetDVRConfig(g_pNewclientDlg->m_Serverinfo[i].m_lServerID, NET_DVR_SET_TIMECFG,0,&CurTime, sizeof(NET_DVR_TIME))) { MessageBox("校时成功!", "温馨提示", MB_ICONINFORMATION); } else { MessageBox("校时失败!", "温馨提示", MB_ICONINFORMATION); } } } void CSetSurveillance::OnReboot() { // TODO: Add your control notification handler code here HTREEITEM hSel, hParent; int i; hSel=m_treeall.GetSelectedItem(); if(hSel==NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION); return; } hParent = m_treeall.GetParentItem(hSel); if(hParent == NULL) { i = m_treeall.GetItemData(hSel); if(NET_DVR_RebootDVR(g_pNewclientDlg->m_Serverinfo[i].m_lServerID)) { MessageBox("服务器正在重启!", "温馨提示", MB_ICONINFORMATION); } else { MessageBox("重启服务器失败!", "温馨提示", MB_ICONINFORMATION); } } } void CSetSurveillance::OnRemoteupgrade() { // TODO: Add your control notification handler code here CRemoteUpgrade UpgradeDlg; HTREEITEM hSel, hParent; int i; hSel=m_treeall.GetSelectedItem(); if(hSel==NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION); return; } hParent = m_treeall.GetParentItem(hSel); if(hParent == NULL) { i = m_treeall.GetItemData(hSel); UpgradeDlg.m_lServerID = g_pNewclientDlg->m_Serverinfo[i].m_lServerID; UpgradeDlg.DoModal(); } } void CSetSurveillance::OnFormatdisk() { // TODO: Add your control notification handler code here CFormatDisk FormatDiskDlg; HTREEITEM hSel, hParent; int i; hSel=m_treeall.GetSelectedItem(); if(hSel==NULL) { MessageBox("请选择DVR!", "温馨提示", MB_ICONINFORMATION); return; } hParent = m_treeall.GetParentItem(hSel); if(hParent == NULL) { i = m_treeall.GetItemData(hSel); FormatDiskDlg.m_lServerID = g_pNewclientDlg->m_Serverinfo[i].m_lServerID; FormatDiskDlg.m_dwDiskNum = g_pNewclientDlg->m_Serverinfo[i].m_dwDiskNum; FormatDiskDlg.DoModal(); } } void CSetSurveillance::OnRclickTree1(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here HTREEITEM select = m_treeall.GetSelectedItem(); if(select == NULL) return; HMENU h_Menu; h_Menu = ::CreatePopupMenu(); MENUITEMINFO mi; mi.cbSize = sizeof(MENUITEMINFO); mi.fMask = MIIM_DATA | MIIM_TYPE | MIIM_ID; mi.fType = MFT_STRING; mi.wID = IDC_MENU_SERVERCFG; mi.dwTypeData = TEXT("配置服务器"); mi.cch = sizeof(TEXT("配置服务器")); ::InsertMenuItem(h_Menu,0,FALSE,&mi); int i; CRemoteParamsCfg RemoteParamsCfgDlg; for (i=0;im_Serverinfo[i].m_csServerName.IsEmpty()) break; RemoteParamsCfgDlg.m_dvrName += (g_pNewclientDlg->m_Serverinfo[i].m_csServerName + "!@#$%^"); } HTREEITEM parent = m_treeall.GetParentItem(select); if (parent == NULL) { i = m_treeall.GetItemData(select); POINT pos; ::GetCursorPos(&pos); int index = ::TrackPopupMenu(h_Menu,TPM_LEFTALIGN | TPM_TOPALIGN | TPM_RETURNCMD ,pos.x,pos.y,0,this->m_hWnd,NULL); switch(index) { case IDC_MENU_SERVERCFG: RemoteParamsCfgDlg.m_ip = g_pNewclientDlg->m_Serverinfo[i].m_csServerIP; RemoteParamsCfgDlg.m_Username = g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminName; RemoteParamsCfgDlg.m_Password = g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminPasswd; RemoteParamsCfgDlg.m_iServerport = g_pNewclientDlg->m_Serverinfo[i].m_wServerPort; RemoteParamsCfgDlg.m_lServerID = g_pNewclientDlg->m_Serverinfo[i].m_lServerID; RemoteParamsCfgDlg.m_iChannelnumber = g_pNewclientDlg->m_Serverinfo[i].m_iServerChannelNumber; RemoteParamsCfgDlg.m_iServertype = g_pNewclientDlg->m_Serverinfo[i].m_wServerType; RemoteParamsCfgDlg.m_lStartChannel = g_pNewclientDlg->m_Serverinfo[i].m_lStartChannel; RemoteParamsCfgDlg.m_dwAlarmInNum = g_pNewclientDlg->m_Serverinfo[i].m_dwAlarmInNum; RemoteParamsCfgDlg.m_dwAlarmOutNum = g_pNewclientDlg->m_Serverinfo[i].m_dwAlarmOutNum; RemoteParamsCfgDlg.m_dwDiskNum = g_pNewclientDlg->m_Serverinfo[i].m_dwDiskNum; if(strcmp(g_pNewclientDlg->m_Serverinfo[i].m_csServerAdminName, "admin")==0) { RemoteParamsCfgDlg.m_bSuperUser = TRUE; } else { RemoteParamsCfgDlg.m_bSuperUser = FALSE; } RemoteParamsCfgDlg.m_dvrSelect = i; RemoteParamsCfgDlg.m_iServer = i; RemoteParamsCfgDlg.DoModal(); break; default: break; } } ::DestroyMenu(h_Menu); *pResult = 0; }