// RemoteUserCFG.cpp : implementation file // #include "stdafx.h" #include "StoneU_HC_OCX.h" #include "RemoteUserCFG.h" #include "RemoteParamsCfg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CRemoteUserCFG dialog extern CRemoteParamsCfg *m_pRemoteParam; CRemoteUserCFG::CRemoteUserCFG(CWnd* pParent /*=NULL*/) : CDialog(CRemoteUserCFG::IDD, pParent) { //{{AFX_DATA_INIT(CRemoteUserCFG) m_Right1 = FALSE; m_Right2 = FALSE; m_Right21 = FALSE; m_Right22 = FALSE; m_Right23 = FALSE; m_Right24 = FALSE; m_Right25 = FALSE; m_Right26 = FALSE; m_Right27 = FALSE; m_Right28 = FALSE; m_Right29 = FALSE; m_Right3 = FALSE; m_Right30 = FALSE; m_Right31 = FALSE; m_Right4 = FALSE; m_Right5 = FALSE; m_Right6 = FALSE; m_UserIP = _T(""); m_UserName = _T(""); m_UserPSW = _T(""); m_UserVerifyPSW = _T(""); m_UserMACAddr1 = _T(""); m_UserMACAddr2 = _T(""); m_UserMACAddr3 = _T(""); m_UserMACAddr4 = _T(""); m_UserMACAddr5 = _T(""); m_UserMACAddr6 = _T(""); m_bChan1 = FALSE; m_bChan10 = FALSE; m_bChan11 = FALSE; m_bChan12 = FALSE; m_bChan14 = FALSE; m_bChan13 = FALSE; m_bChan15 = FALSE; m_bChan16 = FALSE; m_bChan2 = FALSE; m_bChan3 = FALSE; m_bChan4 = FALSE; m_bChan5 = FALSE; m_bChan6 = FALSE; m_bChan7 = FALSE; m_bChan8 = FALSE; m_bChan9 = FALSE; m_bLocalChan1 = FALSE; m_bLocalChan2 = FALSE; m_bLocalChan3 = FALSE; m_bLocalChan4 = FALSE; m_bLocalChan5 = FALSE; m_bLocalChan6 = FALSE; m_bLocalChan7 = FALSE; m_bLocalChan8 = FALSE; m_bLocalChan9 = FALSE; m_bLocalChan10 = FALSE; m_bLocalChan11 = FALSE; m_bLocalChan12 = FALSE; m_bLocalChan13 = FALSE; m_bLocalChan14 = FALSE; m_bLocalChan15 = FALSE; m_bLocalChan16 = FALSE; m_bPreChan1 = FALSE; m_bPreChan2 = FALSE; m_bPreChan3 = FALSE; m_bPreChan4 = FALSE; m_bPreChan5 = FALSE; m_bPreChan6 = FALSE; m_bPreChan7 = FALSE; m_bPreChan8 = FALSE; m_bPreChan9 = FALSE; m_bPreChan10 = FALSE; m_bPreChan11 = FALSE; m_bPreChan12 = FALSE; m_bPreChan13 = FALSE; m_bPreChan14 = FALSE; m_bPreChan15 = FALSE; m_bPreChan16 = FALSE; //}}AFX_DATA_INIT } void CRemoteUserCFG::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CRemoteUserCFG) DDX_Control(pDX, IDC_COMBOUSERSEL, m_UserCtrl); DDX_Check(pDX, IDC_CHKRIGHT1, m_Right1); DDX_Check(pDX, IDC_CHKRIGHT2, m_Right2); DDX_Check(pDX, IDC_CHKRIGHT21, m_Right21); DDX_Check(pDX, IDC_CHKRIGHT22, m_Right22); DDX_Check(pDX, IDC_CHKRIGHT23, m_Right23); DDX_Check(pDX, IDC_CHKRIGHT24, m_Right24); DDX_Check(pDX, IDC_CHKRIGHT25, m_Right25); DDX_Check(pDX, IDC_CHKRIGHT26, m_Right26); DDX_Check(pDX, IDC_CHKRIGHT27, m_Right27); DDX_Check(pDX, IDC_CHKRIGHT28, m_Right28); DDX_Check(pDX, IDC_CHKRIGHT29, m_Right29); DDX_Check(pDX, IDC_CHKRIGHT3, m_Right3); DDX_Check(pDX, IDC_CHKRIGHT30, m_Right30); DDX_Check(pDX, IDC_CHKRIGHT31, m_Right31); DDX_Check(pDX, IDC_CHKRIGHT4, m_Right4); DDX_Check(pDX, IDC_CHKRIGHT5, m_Right5); DDX_Check(pDX, IDC_CHKRIGHT6, m_Right6); DDX_Text(pDX, IDC_EDITUSERIP, m_UserIP); DDX_Text(pDX, IDC_EDITUSERNAME, m_UserName); DDX_Text(pDX, IDC_EDITUSERPSW, m_UserPSW); DDX_Text(pDX, IDC_EDITUSERVERIFYPSW, m_UserVerifyPSW); DDX_Text(pDX, IDC_EDITUSERMACADDR1, m_UserMACAddr1); DDX_Text(pDX, IDC_EDITUSERMACADDR2, m_UserMACAddr2); DDX_Text(pDX, IDC_EDITUSERMACADDR3, m_UserMACAddr3); DDX_Text(pDX, IDC_EDITUSERMACADDR4, m_UserMACAddr4); DDX_Text(pDX, IDC_EDITUSERMACADDR5, m_UserMACAddr5); DDX_Text(pDX, IDC_EDITUSERMACADDR6, m_UserMACAddr6); DDX_Check(pDX, IDC_CHKCHAN1, m_bChan1); DDX_Check(pDX, IDC_CHKCHAN10, m_bChan10); DDX_Check(pDX, IDC_CHKCHAN11, m_bChan11); DDX_Check(pDX, IDC_CHKCHAN12, m_bChan12); DDX_Check(pDX, IDC_CHKCHAN14, m_bChan14); DDX_Check(pDX, IDC_CHKCHAN13, m_bChan13); DDX_Check(pDX, IDC_CHKCHAN15, m_bChan15); DDX_Check(pDX, IDC_CHKCHAN16, m_bChan16); DDX_Check(pDX, IDC_CHKCHAN2, m_bChan2); DDX_Check(pDX, IDC_CHKCHAN3, m_bChan3); DDX_Check(pDX, IDC_CHKCHAN4, m_bChan4); DDX_Check(pDX, IDC_CHKCHAN5, m_bChan5); DDX_Check(pDX, IDC_CHKCHAN6, m_bChan6); DDX_Check(pDX, IDC_CHKCHAN7, m_bChan7); DDX_Check(pDX, IDC_CHKCHAN8, m_bChan8); DDX_Check(pDX, IDC_CHKCHAN9, m_bChan9); DDX_Check(pDX, IDC_CHKCHAN17, m_bLocalChan1); DDX_Check(pDX, IDC_CHKCHAN18, m_bLocalChan2); DDX_Check(pDX, IDC_CHKCHAN19, m_bLocalChan3); DDX_Check(pDX, IDC_CHKCHAN20, m_bLocalChan4); DDX_Check(pDX, IDC_CHKCHAN21, m_bLocalChan5); DDX_Check(pDX, IDC_CHKCHAN22, m_bLocalChan6); DDX_Check(pDX, IDC_CHKCHAN23, m_bLocalChan7); DDX_Check(pDX, IDC_CHKCHAN24, m_bLocalChan8); DDX_Check(pDX, IDC_CHKCHAN25, m_bLocalChan9); DDX_Check(pDX, IDC_CHKCHAN26, m_bLocalChan10); DDX_Check(pDX, IDC_CHKCHAN27, m_bLocalChan11); DDX_Check(pDX, IDC_CHKCHAN28, m_bLocalChan12); DDX_Check(pDX, IDC_CHKCHAN29, m_bLocalChan13); DDX_Check(pDX, IDC_CHKCHAN30, m_bLocalChan14); DDX_Check(pDX, IDC_CHKCHAN31, m_bLocalChan15); DDX_Check(pDX, IDC_CHKCHAN32, m_bLocalChan16); DDX_Check(pDX, IDC_CHKCHAN33, m_bPreChan1); DDX_Check(pDX, IDC_CHKCHAN34, m_bPreChan2); DDX_Check(pDX, IDC_CHKCHAN35, m_bPreChan3); DDX_Check(pDX, IDC_CHKCHAN36, m_bPreChan4); DDX_Check(pDX, IDC_CHKCHAN37, m_bPreChan5); DDX_Check(pDX, IDC_CHKCHAN38, m_bPreChan6); DDX_Check(pDX, IDC_CHKCHAN39, m_bPreChan7); DDX_Check(pDX, IDC_CHKCHAN40, m_bPreChan8); DDX_Check(pDX, IDC_CHKCHAN41, m_bPreChan9); DDX_Check(pDX, IDC_CHKCHAN42, m_bPreChan10); DDX_Check(pDX, IDC_CHKCHAN43, m_bPreChan11); DDX_Check(pDX, IDC_CHKCHAN44, m_bPreChan12); DDX_Check(pDX, IDC_CHKCHAN45, m_bPreChan13); DDX_Check(pDX, IDC_CHKCHAN46, m_bPreChan14); DDX_Check(pDX, IDC_CHKCHAN47, m_bPreChan15); DDX_Check(pDX, IDC_CHKCHAN48, m_bPreChan16); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CRemoteUserCFG, CDialog) //{{AFX_MSG_MAP(CRemoteUserCFG) ON_CBN_SELCHANGE(IDC_COMBOUSERSEL, OnSelchangeCombousersel) ON_BN_CLICKED(IDUSEROK, OnUserok) ON_BN_CLICKED(IDEXIT, OnExit) ON_BN_CLICKED(IDC_CHKRIGHT23, OnChkright23) ON_BN_CLICKED(IDC_CHKRIGHT3, OnChkright3) ON_BN_CLICKED(IDC_CHKRIGHT28, OnChkright28) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CRemoteUserCFG message handlers BOOL CRemoteUserCFG::CheckPara() { CString csUserName; DWORD dwReturned; bSetUserParams = FALSE; char cTemp[100]; if (m_bConnectServer) { if (!NET_DVR_GetDVRConfig(m_lServerID, NET_DVR_GET_USERCFG_EX, 0,&m_user, sizeof(NET_DVR_USER_EX), &dwReturned)) { CString sTemp; sTemp.Format("ERROR: NET_DVR_GET_USERCFG = %d \n", NET_DVR_GetLastError()); MessageBox(sTemp, "温馨提示", MB_ICONINFORMATION); } else { if (m_bSuperUser) { m_usernum = 0; m_UserCtrl.SetCurSel(m_usernum); } else { int i; for (i=0; i> 1) & 0x01; m_bChan3 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 2) & 0x01; m_bChan4 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 3) & 0x01; m_bChan5 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 4) & 0x01; m_bChan6 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 5) & 0x01; m_bChan7 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 6) & 0x01; m_bChan8 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 7) & 0x01; m_bChan9 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 8) & 0x01; m_bChan10 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 9) & 0x01; m_bChan11 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 10) & 0x01; m_bChan12 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 11) & 0x01; m_bChan13 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 12) & 0x01; m_bChan14 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 13) & 0x01; m_bChan15 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 14) & 0x01; m_bChan16 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 15) & 0x01; m_bLocalChan1 = m_user.struUser[m_usernum].dwLocalPlaybackRight & 0x01; m_bLocalChan2 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 1) & 0x01; m_bLocalChan3 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 2) & 0x01; m_bLocalChan4 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 3) & 0x01; m_bLocalChan5 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 4) & 0x01; m_bLocalChan6 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 5) & 0x01; m_bLocalChan7 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 6) & 0x01; m_bLocalChan8 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 7) & 0x01; m_bLocalChan9 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 8) & 0x01; m_bLocalChan10 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 9) & 0x01; m_bLocalChan11 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 10) & 0x01; m_bLocalChan12 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 11) & 0x01; m_bLocalChan13 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 12) & 0x01; m_bLocalChan14 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 13) & 0x01; m_bLocalChan15 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 14) & 0x01; m_bLocalChan16 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 15) & 0x01; m_bPreChan1 = m_user.struUser[m_usernum].dwNetPreviewRight & 0x01; m_bPreChan2 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 1) & 0x01; m_bPreChan3 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 2) & 0x01; m_bPreChan4 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 3) & 0x01; m_bPreChan5 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 4) & 0x01; m_bPreChan6 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 5) & 0x01; m_bPreChan7 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 6) & 0x01; m_bPreChan8 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 7) & 0x01; m_bPreChan9 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 8) & 0x01; m_bPreChan10 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 9) & 0x01; m_bPreChan11 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 10) & 0x01; m_bPreChan12 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 11) & 0x01; m_bPreChan13 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 12) & 0x01; m_bPreChan14 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 13) & 0x01; m_bPreChan15 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 14) & 0x01; m_bPreChan16 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 15) & 0x01; #endif GetDlgItem(IDC_COMBOUSERSEL)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERIP)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERMACADDR1)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERMACADDR2)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERMACADDR3)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERMACADDR4)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERMACADDR5)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERMACADDR6)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERNAME)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERPSW)->EnableWindow(FALSE); GetDlgItem(IDC_EDITUSERVERIFYPSW)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT1)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT2)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT3)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT4)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT5)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT6)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT21)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT22)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT23)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT24)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT25)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT26)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT27)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT28)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT29)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT30)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT31)->EnableWindow(FALSE); if (m_bSuperUser) { GetDlgItem(IDC_COMBOUSERSEL)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERIP)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERMACADDR1)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERMACADDR2)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERMACADDR3)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERMACADDR4)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERMACADDR5)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERMACADDR6)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERPSW)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERVERIFYPSW)->EnableWindow(TRUE); } GetDlgItem(IDUSEROK)->EnableWindow(TRUE); } } GetDlgItem(IDC_EDITUSERNAME)->EnableWindow(FALSE); UpdateData(FALSE); return TRUE; } BOOL CRemoteUserCFG::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here CRect rc(0, 0, 0, 0); GetParent()->GetClientRect(&rc); ((CTabCtrl*)GetParent())->AdjustRect(FALSE, &rc); MoveWindow(&rc); if(m_pRemoteParam->m_dvrSelect != -1) CheckPara(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CRemoteUserCFG::OnSelchangeCombousersel() { if(m_pRemoteParam->m_dvrSelect == -1) return; // TODO: Add your control notification handler code here char cTemp[100]; m_usernum = m_UserCtrl.GetCurSel(); ZeroMemory(cTemp, 100); memcpy(cTemp, m_user.struUser[m_usernum].sUserName, MAX_NAMELEN); m_UserName.Format("%s", cTemp); ZeroMemory(cTemp, 100); memcpy(cTemp, m_user.struUser[m_usernum].sPassword, PASSWD_LEN); m_UserPSW.Format("%s", cTemp); ZeroMemory(cTemp, 100); memcpy(cTemp, m_user.struUser[m_usernum].sPassword, PASSWD_LEN); m_UserVerifyPSW.Format("%s", cTemp); m_UserIP.Format("%s",m_user.struUser[m_usernum].sUserIP); m_UserMACAddr1.Format("%02x",m_user.struUser[m_usernum].byMACAddr[0]); m_UserMACAddr2.Format("%02x",m_user.struUser[m_usernum].byMACAddr[1]); m_UserMACAddr3.Format("%02x",m_user.struUser[m_usernum].byMACAddr[2]); m_UserMACAddr4.Format("%02x",m_user.struUser[m_usernum].byMACAddr[3]); m_UserMACAddr5.Format("%02x",m_user.struUser[m_usernum].byMACAddr[4]); m_UserMACAddr6.Format("%02x",m_user.struUser[m_usernum].byMACAddr[5]); m_Right1 = m_user.struUser[m_usernum].dwLocalRight[0]; m_Right2 = m_user.struUser[m_usernum].dwLocalRight[1]; m_Right3 = m_user.struUser[m_usernum].dwLocalRight[2]; m_Right4 = m_user.struUser[m_usernum].dwLocalRight[3]; m_Right5 = m_user.struUser[m_usernum].dwLocalRight[4]; m_Right6 = m_user.struUser[m_usernum].dwLocalRight[5]; m_Right21 = m_user.struUser[m_usernum].dwRemoteRight[0]; m_Right22 = m_user.struUser[m_usernum].dwRemoteRight[1]; m_Right23 = m_user.struUser[m_usernum].dwRemoteRight[2]; m_Right24 = m_user.struUser[m_usernum].dwRemoteRight[3]; m_Right25 = m_user.struUser[m_usernum].dwRemoteRight[4]; m_Right26 = m_user.struUser[m_usernum].dwRemoteRight[5]; m_Right27 = m_user.struUser[m_usernum].dwRemoteRight[6]; m_Right28 = m_user.struUser[m_usernum].dwRemoteRight[7]; m_Right29 = m_user.struUser[m_usernum].dwRemoteRight[8]; m_Right30 = m_user.struUser[m_usernum].dwRemoteRight[9]; m_Right31 = m_user.struUser[m_usernum].dwRemoteRight[10]; if (m_usernum != 0) { GetDlgItem(IDC_EDITUSERNAME)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERPSW)->EnableWindow(TRUE); GetDlgItem(IDC_EDITUSERVERIFYPSW)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT1)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT2)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT3)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT4)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT5)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT6)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT21)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT22)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT23)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT24)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT25)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT26)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT27)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT28)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT29)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT30)->EnableWindow(TRUE); GetDlgItem(IDC_CHKRIGHT31)->EnableWindow(TRUE); #ifdef SDK_V15 F_ShowChan(m_iChannelnumber, m_Right23); F_ShowLocalChan(m_iChannelnumber, m_Right3); F_ShowPreChan(m_iChannelnumber, m_Right28); #endif } else { GetDlgItem(IDC_EDITUSERNAME)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT1)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT2)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT3)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT4)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT5)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT6)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT21)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT22)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT23)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT24)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT25)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT26)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT27)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT28)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT29)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT30)->EnableWindow(FALSE); GetDlgItem(IDC_CHKRIGHT31)->EnableWindow(FALSE); #ifdef SDK_V15 F_ShowChan(m_iChannelnumber, FALSE); F_ShowLocalChan(m_iChannelnumber, FALSE); F_ShowPreChan(m_iChannelnumber, FALSE); #endif } UpdateData(FALSE); } void CRemoteUserCFG::OnUserok() { if(m_pRemoteParam->m_dvrSelect == -1) return; // TODO: Add your control notification handler code here UpdateData(TRUE); strncpy((char *)m_user.struUser[m_usernum].sUserName, m_UserName, MAX_NAMELEN); if (strcmp(m_UserPSW,m_UserVerifyPSW) != 0) { MessageBox("密码与确认密码不一致!", "温馨提示", MB_ICONINFORMATION); return; } int iLength = strlen(m_UserPSW); iLength = iLength>PASSWD_LEN ? PASSWD_LEN:iLength; char temp[PASSWD_LEN]; strncpy(temp,m_UserPSW,PASSWD_LEN); strncpy((char *)m_user.struUser[m_usernum].sPassword, m_UserPSW,PASSWD_LEN); strncpy((char *)m_user.struUser[m_usernum].sUserIP, m_UserIP,16); int nVal; sscanf(m_UserMACAddr1, "%02x", &nVal); m_user.struUser[m_usernum].byMACAddr[0] = (BYTE)nVal; sscanf(m_UserMACAddr2, "%02x", &nVal); m_user.struUser[m_usernum].byMACAddr[1] = (BYTE)nVal; sscanf(m_UserMACAddr3, "%02x", &nVal); m_user.struUser[m_usernum].byMACAddr[2] = (BYTE)nVal; sscanf(m_UserMACAddr4, "%02x", &nVal); m_user.struUser[m_usernum].byMACAddr[3] = (BYTE)nVal; sscanf(m_UserMACAddr5, "%02x", &nVal); m_user.struUser[m_usernum].byMACAddr[4] = (BYTE)nVal; sscanf(m_UserMACAddr6, "%02x", &nVal); m_user.struUser[m_usernum].byMACAddr[5] = (BYTE)nVal; m_user.struUser[m_usernum].dwLocalRight[0] = m_Right1; m_user.struUser[m_usernum].dwLocalRight[1] = m_Right2; m_user.struUser[m_usernum].dwLocalRight[2] = m_Right3; m_user.struUser[m_usernum].dwLocalRight[3] = m_Right4; m_user.struUser[m_usernum].dwLocalRight[4] = m_Right5; m_user.struUser[m_usernum].dwLocalRight[5] = m_Right6; m_user.struUser[m_usernum].dwRemoteRight[0] = m_Right21; m_user.struUser[m_usernum].dwRemoteRight[1] = m_Right22; m_user.struUser[m_usernum].dwRemoteRight[2] = m_Right23; m_user.struUser[m_usernum].dwRemoteRight[3] = m_Right24; m_user.struUser[m_usernum].dwRemoteRight[4] = m_Right25; m_user.struUser[m_usernum].dwRemoteRight[5] = m_Right26; m_user.struUser[m_usernum].dwRemoteRight[6] = m_Right27; m_user.struUser[m_usernum].dwRemoteRight[7] = m_Right28; m_user.struUser[m_usernum].dwRemoteRight[8] = m_Right29; m_user.struUser[m_usernum].dwRemoteRight[9] = m_Right30; m_user.struUser[m_usernum].dwRemoteRight[10] = m_Right31; #ifdef SDK_V15 m_user.struUser[m_usernum].dwNetPlaybackRight = 0; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan1; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan2 << 1; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan3 << 2; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan4 << 3; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan5 << 4; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan6 << 5; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan7 << 6; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan8 << 7; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan9 << 8; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan10 << 9; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan11 << 10; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan12 << 11; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan13 << 12; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan14 << 13; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan15 << 14; m_user.struUser[m_usernum].dwNetPlaybackRight |= m_bChan16 << 15; m_user.struUser[m_usernum].dwLocalPlaybackRight = 0; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan1; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan2 << 1; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan3 << 2; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan4 << 3; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan5 << 4; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan6 << 5; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan7 << 6; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan8 << 7; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan9 << 8; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan10 << 9; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan11 << 10; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan12 << 11; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan13 << 12; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan14 << 13; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan15 << 14; m_user.struUser[m_usernum].dwLocalPlaybackRight |= m_bLocalChan16 << 15; m_user.struUser[m_usernum].dwNetPreviewRight = 0; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan1; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan2 << 1; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan3 << 2; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan4 << 3; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan5 << 4; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan6 << 5; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan7 << 6; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan8 << 7; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan9 << 8; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan10 << 9; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan11 << 10; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan12 << 11; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan13 << 12; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan14 << 13; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan15 << 14; m_user.struUser[m_usernum].dwNetPreviewRight |= m_bPreChan16 << 15; #endif bSetUserParams = TRUE; } void CRemoteUserCFG::OnExit() { // TODO: Add your control notification handler code here bSetUserParams = FALSE; } void CRemoteUserCFG::OnCancel() { // TODO: Add extra cleanup here // CDialog::OnCancel(); } BOOL CRemoteUserCFG::F_ShowChan(int nChan, BOOL bFlag) { #ifdef SDK_V15 if (nChan>=1) { GetDlgItem(IDC_CHKCHAN1)->EnableWindow(bFlag); m_bChan1 = m_user.struUser[m_usernum].dwNetPlaybackRight & 0x01; } if (nChan>=2) { GetDlgItem(IDC_CHKCHAN2)->EnableWindow(bFlag); m_bChan2 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 1) & 0x01; } if (nChan>=3) { GetDlgItem(IDC_CHKCHAN3)->EnableWindow(bFlag); m_bChan3 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 2) & 0x01; } if (nChan>=4) { GetDlgItem(IDC_CHKCHAN4)->EnableWindow(bFlag); m_bChan4 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 3) & 0x01; } if (nChan>=5) { GetDlgItem(IDC_CHKCHAN5)->EnableWindow(bFlag); m_bChan5 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 4) & 0x01; } if (nChan>=6) { GetDlgItem(IDC_CHKCHAN6)->EnableWindow(bFlag); m_bChan6 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 5) & 0x01; } if (nChan>=7) { GetDlgItem(IDC_CHKCHAN7)->EnableWindow(bFlag); m_bChan7 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 6) & 0x01; } if (nChan>=8) { GetDlgItem(IDC_CHKCHAN8)->EnableWindow(bFlag); m_bChan8 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 7) & 0x01; } if (nChan>=9) { GetDlgItem(IDC_CHKCHAN9)->EnableWindow(bFlag); m_bChan9 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 8) & 0x01; } if (nChan>=10) { GetDlgItem(IDC_CHKCHAN10)->EnableWindow(bFlag); m_bChan10 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 9) & 0x01; } if (nChan>=11) { GetDlgItem(IDC_CHKCHAN11)->EnableWindow(bFlag); m_bChan11 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 10) & 0x01; } if (nChan>=12) { GetDlgItem(IDC_CHKCHAN12)->EnableWindow(bFlag); m_bChan12 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 11) & 0x01; } if (nChan>=13) { GetDlgItem(IDC_CHKCHAN13)->EnableWindow(bFlag); m_bChan13 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 12) & 0x01; } if (nChan>=14) { GetDlgItem(IDC_CHKCHAN14)->EnableWindow(bFlag); m_bChan14 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 13) & 0x01; } if (nChan>=15) { GetDlgItem(IDC_CHKCHAN15)->EnableWindow(bFlag); m_bChan15 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 14) & 0x01; } if (nChan>=16) { GetDlgItem(IDC_CHKCHAN16)->EnableWindow(bFlag); m_bChan16 = (m_user.struUser[m_usernum].dwNetPlaybackRight >> 15) & 0x01; } #endif return TRUE; } BOOL CRemoteUserCFG::F_ShowLocalChan(int nChan, BOOL bFlag) { #ifdef SDK_V15 if (nChan>=1) { GetDlgItem(IDC_CHKCHAN17)->EnableWindow(bFlag); m_bLocalChan1 = m_user.struUser[m_usernum].dwLocalPlaybackRight & 0x01; } if (nChan>=2) { GetDlgItem(IDC_CHKCHAN18)->EnableWindow(bFlag); m_bLocalChan2 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 1) & 0x01; } if (nChan>=3) { GetDlgItem(IDC_CHKCHAN19)->EnableWindow(bFlag); m_bLocalChan3 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 2) & 0x01; } if (nChan>=4) { GetDlgItem(IDC_CHKCHAN20)->EnableWindow(bFlag); m_bLocalChan4 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 3) & 0x01; } if (nChan>=5) { GetDlgItem(IDC_CHKCHAN21)->EnableWindow(bFlag); m_bLocalChan5 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 4) & 0x01; } if (nChan>=6) { GetDlgItem(IDC_CHKCHAN22)->EnableWindow(bFlag); m_bLocalChan6 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 5) & 0x01; } if (nChan>=7) { GetDlgItem(IDC_CHKCHAN23)->EnableWindow(bFlag); m_bLocalChan7 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 6) & 0x01; } if (nChan>=8) { GetDlgItem(IDC_CHKCHAN24)->EnableWindow(bFlag); m_bLocalChan8 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 7) & 0x01; } if (nChan>=9) { GetDlgItem(IDC_CHKCHAN25)->EnableWindow(bFlag); m_bLocalChan9 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 8) & 0x01; } if (nChan>=10) { GetDlgItem(IDC_CHKCHAN26)->EnableWindow(bFlag); m_bLocalChan10 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 9) & 0x01; } if (nChan>=11) { GetDlgItem(IDC_CHKCHAN27)->EnableWindow(bFlag); m_bLocalChan11 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 10) & 0x01; } if (nChan>=12) { GetDlgItem(IDC_CHKCHAN28)->EnableWindow(bFlag); m_bLocalChan12 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 11) & 0x01; } if (nChan>=13) { GetDlgItem(IDC_CHKCHAN29)->EnableWindow(bFlag); m_bLocalChan13 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 12) & 0x01; } if (nChan>=14) { GetDlgItem(IDC_CHKCHAN30)->EnableWindow(bFlag); m_bLocalChan14 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 13) & 0x01; } if (nChan>=15) { GetDlgItem(IDC_CHKCHAN31)->EnableWindow(bFlag); m_bLocalChan15 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 14) & 0x01; } if (nChan>=16) { GetDlgItem(IDC_CHKCHAN32)->EnableWindow(bFlag); m_bLocalChan16 = (m_user.struUser[m_usernum].dwLocalPlaybackRight >> 15) & 0x01; } #endif return TRUE; } BOOL CRemoteUserCFG::F_ShowPreChan(int nChan, BOOL bFlag) { #ifdef SDK_V15 if (nChan>=1) { GetDlgItem(IDC_CHKCHAN33)->EnableWindow(bFlag); m_bPreChan1 = m_user.struUser[m_usernum].dwNetPreviewRight & 0x01; } if (nChan>=2) { GetDlgItem(IDC_CHKCHAN34)->EnableWindow(bFlag); m_bPreChan2 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 1) & 0x01; } if (nChan>=3) { GetDlgItem(IDC_CHKCHAN35)->EnableWindow(bFlag); m_bPreChan3 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 2) & 0x01; } if (nChan>=4) { GetDlgItem(IDC_CHKCHAN36)->EnableWindow(bFlag); m_bPreChan4 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 3) & 0x01; } if (nChan>=5) { GetDlgItem(IDC_CHKCHAN37)->EnableWindow(bFlag); m_bPreChan5 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 4) & 0x01; } if (nChan>=6) { GetDlgItem(IDC_CHKCHAN38)->EnableWindow(bFlag); m_bPreChan6 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 5) & 0x01; } if (nChan>=7) { GetDlgItem(IDC_CHKCHAN39)->EnableWindow(bFlag); m_bPreChan7 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 6) & 0x01; } if (nChan>=8) { GetDlgItem(IDC_CHKCHAN40)->EnableWindow(bFlag); m_bPreChan8 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 7) & 0x01; } if (nChan>=9) { GetDlgItem(IDC_CHKCHAN41)->EnableWindow(bFlag); m_bPreChan9 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 8) & 0x01; } if (nChan>=10) { GetDlgItem(IDC_CHKCHAN42)->EnableWindow(bFlag); m_bPreChan10 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 9) & 0x01; } if (nChan>=11) { GetDlgItem(IDC_CHKCHAN43)->EnableWindow(bFlag); m_bPreChan11 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 10) & 0x01; } if (nChan>=12) { GetDlgItem(IDC_CHKCHAN44)->EnableWindow(bFlag); m_bPreChan12 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 11) & 0x01; } if (nChan>=13) { GetDlgItem(IDC_CHKCHAN45)->EnableWindow(bFlag); m_bPreChan13 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 12) & 0x01; } if (nChan>=14) { GetDlgItem(IDC_CHKCHAN46)->EnableWindow(bFlag); m_bPreChan14 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 13) & 0x01; } if (nChan>=15) { GetDlgItem(IDC_CHKCHAN47)->EnableWindow(bFlag); m_bPreChan15 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 14) & 0x01; } if (nChan>=16) { GetDlgItem(IDC_CHKCHAN48)->EnableWindow(bFlag); m_bPreChan16 = (m_user.struUser[m_usernum].dwNetPreviewRight >> 15) & 0x01; } #endif return TRUE; } void CRemoteUserCFG::OnChkright23() { #ifdef SDK_V15 // TODO: Add your control notification handler code here UpdateData(TRUE); F_ShowChan(m_iChannelnumber, m_Right23); #endif } void CRemoteUserCFG::OnChkright3() { #ifdef SDK_V15 // TODO: Add your control notification handler code here UpdateData(TRUE); F_ShowLocalChan(m_iChannelnumber, m_Right3); #endif } void CRemoteUserCFG::OnChkright28() { // TODO: Add your control notification handler code here #ifdef SDK_V15 // TODO: Add your control notification handler code here UpdateData(TRUE); F_ShowPreChan(m_iChannelnumber, m_Right28); #endif }