BOOL CDlgChVMask::ConnectVideo() { KILLTIMER(m_timerid); if(m_hchann != -1) { VSNET_ClientStop(m_hchann); m_hchann = -1; } CHANNEL_CLIENTINFO m_chinfo; memset(&m_chinfo,0,sizeof(CHANNEL_CLIENTINFO)); m_chinfo.m_buffnum = 5; m_chinfo.m_ch = m_ch; m_chinfo.m_hChMsgWnd = m_hWnd; m_chinfo.m_nChmsgid = DLGWND_VIDEOMSG; m_chinfo.m_hVideohWnd = GetDlgItem(IDC_STATIC_WND)->m_hWnd; m_chinfo.m_password = (char*)(const char*)(g_SerParam->m_password); m_chinfo.m_playstart = TRUE; m_chinfo.m_sername = (char*)(const char*)(g_SerParam->m_sername); m_chinfo.m_tranType = 3; m_chinfo.m_useoverlay = FALSE; m_chinfo.m_username = (char*)(const char*)(g_SerParam->m_username); m_chinfo.nColorKey = RGB(255,0,255); m_hchann = VSNET_ClientStart((char*)(const char*)g_SerParam->m_serurl,&m_chinfo,g_SerParam->m_serport); if(m_hchann == -1) { return FALSE; } else { VSNET_ClientSetDelayTime(m_hchann,5); } return TRUE; }
BOOL CDlgCfgVMask::OnInitDialog() { CDialog::OnInitDialog(); CString str; CHANNEL_CLIENTINFO m_chinfo; m_chinfo.m_buffnum = 5; m_chinfo.m_ch = m_ch; m_chinfo.m_hChMsgWnd = NULL; m_chinfo.m_hVideohWnd = GetDlgItem(IDC_STATIC_WND)->m_hWnd; m_chinfo.m_nChmsgid = 0; m_chinfo.m_password = m_password; m_chinfo.m_playstart = TRUE; m_chinfo.m_sername = m_servername; m_chinfo.m_tranType = 1; m_chinfo.m_useoverlay = FALSE; m_chinfo.m_username = m_username; m_chinfo.context = NULL; m_chinfo.m_messagecallback = NULL; m_hchann = VSNET_ClientStart(m_url,&m_chinfo,m_port); if(m_hchann == -1) { str.LoadString(IDS_STRING180); AfxMessageBox(str,MB_ICONWARNING); } RECT rect; m_videownd.m_ImageWidth = 704; m_videownd.m_ImageHeight = 576; m_videownd.m_HCount = m_videownd.m_ImageWidth / 32; m_videownd.m_VCount = m_videownd.m_ImageHeight / 32; m_videownd.m_curmouse_x = m_videownd.m_curmouse_y = 0; m_videownd.GetClientRect(&rect); m_videownd.m_wblock = (rect.right - rect.left)/(m_videownd.m_ImageWidth/32); m_videownd.m_hblock = (rect.bottom - rect.top)/(m_videownd.m_VCount); float w_off,h_off; w_off = (float)(rect.right - rect.left) / (float)704; h_off = (float)(rect.bottom - rect.top) / (float)576; m_videownd.m_maskmax_w = (int)((float)352 * w_off); m_videownd.m_maskmax_h = (int)((float)288 * h_off); memset(&m_vmask,0,sizeof(CHANNVIDEOMASK)); m_videownd.pvmask = &m_vmask; m_videownd.m_bIsArea= FALSE; m_videownd.m_bLinkOk= TRUE; return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }