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;
}
Example #2
0
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
}