亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? avdconfdlg.cpp

?? 一個(gè)簡(jiǎn)單的視頻會(huì)議VC++MFC工程文件
?? CPP
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
    
	hr = pEvent->get_State(&enState);
    if (FAILED(hr))
    {
        
        return;
    }
    
	hr = pEvent->get_Session(&pSession);
    if (FAILED(hr))
    {
        
        return;
    }
    switch ( enState )
	{
	case RTCSS_INCOMING:
        {
			
            
            RTC_SESSION_TYPE enType;
            
			hr = pSession->get_Type(&enType);
            if (FAILED(hr))
            {
                
                SAFE_RELEASE(pSession);
                return;
            }            
            if (enType == RTCST_IM)
            {
                
                m_pClient->PlayRing(RTCRT_MESSAGE, VARIANT_TRUE);
            }
            else            
            {
                
                if ((m_AVDlg) && (m_AVDlg.GetState() != RTCSS_IDLE))
                {
                    
                    
                    pSession->Terminate(RTCTR_BUSY);
                    SAFE_RELEASE(pSession);
                    return;
                }
                    
                
                IRTCEnumParticipants * pEnum = NULL;
                IRTCParticipant * pParticipant = NULL;
                hr = pSession->EnumerateParticipants(&pEnum);
                if (FAILED(hr))
                {
                    
                    SAFE_RELEASE(pSession);
                    return;
                }
                hr = pEnum->Next(1, &pParticipant, NULL);
                SAFE_RELEASE(pEnum);
                if (hr != S_OK)
                {
                    
                    SAFE_RELEASE(pSession);
                    return;
                }
                
                BSTR bstrURI = NULL;
                hr = pParticipant->get_UserURI(&bstrURI);
                if (FAILED(hr))
                {
                    
                    SAFE_RELEASE(pSession);
                    SAFE_RELEASE(pParticipant);
                    return;
                }
                
                BSTR bstrName = NULL;
                hr = pParticipant->get_Name(&bstrName);
                SAFE_RELEASE(pParticipant);
                if (FAILED(hr))
                {
                    
                    SAFE_FREE_STRING(bstrURI);
                    SAFE_RELEASE(pSession);
                    return;
                }
                
                m_pClient->PlayRing(RTCRT_PHONE, VARIANT_TRUE);
                
                BOOL fAccept;
				CIncomingDlg	cDlg;	   
				SESSION_DATA	pData;
				pData.bstrName = bstrName;
				pData.bstrURI = bstrURI;
				SetWindowLong ( m_hWnd, GWL_USERDATA, (LONG)&pData);
				
				
				fAccept = (cDlg.DoModal() == IDOK);
				
				SAFE_FREE_STRING(bstrURI);
				SAFE_FREE_STRING(bstrName);
                    
                if (fAccept)
                {
                    
                    hr = pSession->Answer();
                    if (FAILED(hr))
                    {
                        
                        SAFE_RELEASE(pSession);
                        return;
                    }
                }
                else
                {
                    
                    pSession->Terminate(RTCTR_REJECT);
					SAFE_RELEASE(pSession);
                    return;
                }
            }  
            
            
            
            hr = AddSession(pSession, enType);
            if (FAILED(hr))
            {
                
                SAFE_RELEASE(pSession);
                return;
            }
        }        
		break;
	}
    
	if (m_AVDlg)
		m_AVDlg.SetState (enState);
}
void CAVDConfDlg::OnRTCMediaEvent(IRTCMediaEvent *pEvent)
{
    long lMediaType;
    RTC_MEDIA_EVENT_TYPE enType;
    RTC_MEDIA_EVENT_REASON enReason;
    HRESULT hr;
	hr = pEvent->get_MediaType(&lMediaType);
    if (FAILED(hr))
    {
        
        return;
    }
    hr = pEvent->get_EventType(&enType);			  
    if (FAILED(hr))
    {
        
        return;
    }
    hr = pEvent->get_EventReason(&enReason);
    if (FAILED(hr))
    {
        
        return;
    }
	if ((m_AVDlg) && (m_AVDlg.GetState () != RTCSS_IDLE))
    {
        
        m_AVDlg.DeliverMedia(lMediaType, enType, enReason);
    }
}
void CAVDConfDlg::OnRTCIntensityEvent(IRTCIntensityEvent *pEvent)
{
    RTC_AUDIO_DEVICE enDevice;
    long lLevel, lMin, lMax;
    HRESULT hr;
    
	hr = pEvent->get_Direction(&enDevice);
    if (FAILED(hr))
    {
        
        return;
    }
    hr = pEvent->get_Level(&lLevel);
    if (FAILED(hr))
    {
        
        return;
    }
    hr = pEvent->get_Min(&lMin);
    if (FAILED(hr))
    {
        
        return;
    }
    hr = pEvent->get_Max(&lMax);
    if (FAILED(hr))
    {
        
        return;
    }
    
    if ((lMax - lMin) == 0)
    {
        lLevel = 0;
    }
    else
    {
        lLevel = (lLevel - lMin) * 100 / (lMax - lMin);
    }
	if (m_AVDlg.GetState () != RTCSS_IDLE)
    {
        
        m_AVDlg.DeliverIntensity(enDevice, lLevel);
    }
}
void CAVDConfDlg::OnRTCClientEvent(IRTCClientEvent *pEvent)
{
    HRESULT hr;
    
    RTC_CLIENT_EVENT_TYPE enEventType;
    hr = pEvent->get_EventType(&enEventType);
    if (FAILED(hr))
    {
        
        return;
    }
    if ( enEventType == RTCCET_ASYNC_CLEANUP_DONE )
    {
        m_pClient->Shutdown();
		SAFE_RELEASE(m_pClient);
		
        
        DestroyWindow();
    }
    else
    {
        if (m_AVDlg.GetState() != RTCSS_IDLE)
        {
            
            m_AVDlg.DeliverClient(enEventType);
        }
    }
}
HRESULT CAVDConfDlg::AddSession(IRTCSession *pSession, RTC_SESSION_TYPE enType)
{
    
    BOOL fAVSession = (enType != RTCST_IM);
    
	
	if (fAVSession)
	{
		BOOL ret = m_AVDlg.Create (IDD_AVDLG,this);
		if (!ret)
		{
			MessageBox ( "Error Creating Dialog" );
		}
		m_AVDlg.ShowWindow (SW_SHOW);
		m_AVDlg.SetParentClient (m_pClient);
		m_AVDlg.SetSession (pSession);
	}
	else
	{
		BOOL ret = m_cMessageDlg.Create (IDD_MESSAGEDLG, this);
		if (!ret)
		{
			MessageBox ( "Error Creating Dialog" );
		}
		m_cMessageDlg.ShowWindow (SW_SHOW);
		m_cMessageDlg.SetParentClient ( m_pClient );
		m_cMessageDlg.SetSession (pSession);
	}
	return S_OK;
}
HRESULT CAVDConfDlg::OnRTCMessagingEvent(IRTCMessagingEvent *pEvent)
{
    IRTCSession * pSession = NULL;
    
    IRTCParticipant * pParticipant = NULL;
    RTC_MESSAGING_EVENT_TYPE enType;
    RTC_MESSAGING_USER_STATUS enStatus;
    BSTR bstrContentType = NULL;
    BSTR bstrMessage = NULL;
    HRESULT hr;
    hr = pEvent->get_Session(&pSession);
    if (FAILED(hr))
    {
        
        return S_FALSE;
    }
    
    hr = pEvent->get_EventType(&enType);
    if (FAILED(hr))
    {
        
        return S_FALSE;
    }
    hr = pEvent->get_Participant(&pParticipant);
    if (FAILED(hr))
    {
        
        return S_FALSE;
    }
    if (enType == RTCMSET_MESSAGE)
    {
        hr = pEvent->get_MessageHeader(&bstrContentType);
        if (FAILED(hr))
        {
            
            SAFE_RELEASE(pParticipant);
            return S_FALSE;
        }
        hr = pEvent->get_Message(&bstrMessage);
        if (FAILED(hr))
        {
            
            SAFE_RELEASE(pParticipant);
            SAFE_FREE_STRING(bstrContentType);
            return S_FALSE;
        }
        
        if (m_cMessageDlg)
			m_cMessageDlg.DeliverMessage(pParticipant, bstrContentType, bstrMessage);
        SAFE_FREE_STRING(bstrContentType);
        SAFE_FREE_STRING(bstrMessage);
    }
    else if (enType == RTCMSET_STATUS)
    {
        hr = pEvent->get_UserStatus(&enStatus);
        if (FAILED(hr))
        {
            
            return S_FALSE;
        }
        
        m_cMessageDlg.DeliverUserStatus(pParticipant, enStatus);
    }
    SAFE_RELEASE(pParticipant); 
	
	return S_OK;
}
void CAVDConfDlg::OnOK() 
{
	if (m_pClient)
	{
		m_pClient->StopT120Applets();
		m_pClient->PrepareForShutdown();
		if (m_pEvents)
		{
			m_pEvents->Unadvise( m_pClient);
		}
	}
	CDialog::OnOK();
}
void CAVDConfDlg::OnCancel ()
{	
	MessageBox ( "Please use the shutdown\nbutton to quit." );
	return;
}
void CAVDConfDlg::OnAboutbox() 
{
	CAboutDlg dlgAbout;
	dlgAbout.DoModal();
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩大陆在线| 精品国产一区二区国模嫣然| 天堂影院一区二区| 中文字幕成人av| 欧美视频在线观看一区| 久久精品国产一区二区三区免费看| 亚洲国产精品二十页| 欧美午夜在线一二页| gogo大胆日本视频一区| 肉丝袜脚交视频一区二区| 国产亚洲精品7777| 91精品国产综合久久蜜臀| 盗摄精品av一区二区三区| 久久精品国产久精国产爱| 国产精品福利电影一区二区三区四区| 欧美中文字幕一区二区三区亚洲| 国产不卡在线视频| 老司机精品视频线观看86| 久久综合一区二区| 日韩免费电影网站| 欧美性受xxxx| 91国内精品野花午夜精品| 国产69精品久久久久777| 亚洲欧美影音先锋| 久久精品无码一区二区三区| 欧美人与禽zozo性伦| 一本色道**综合亚洲精品蜜桃冫| 国产麻豆成人精品| 日本va欧美va精品发布| 视频一区二区三区入口| 中文字幕日本乱码精品影院| 国产午夜亚洲精品羞羞网站| 欧美一区三区四区| 在线免费不卡视频| 欧美日韩精品一区视频| 在线观看日韩电影| 国产一区二区在线免费观看| 久草在线在线精品观看| 日韩精品一二三区| 奇米影视7777精品一区二区| 午夜视频在线观看一区二区| 国产精品国产三级国产普通话三级| 久久久不卡网国产精品一区| 欧美videos大乳护士334| 欧美精品一区二区三区在线播放| 欧美理论片在线| 欧美电影在线免费观看| 欧美一区二区播放| 日韩欧美一区二区免费| 久久精品视频免费| 国产喷白浆一区二区三区| 日韩一区二区在线看| 欧美成人一区二区三区| 欧美一卡二卡三卡四卡| 久久免费精品国产久精品久久久久| 精品99999| 欧美精品一区二区在线播放| 国产精品久久影院| 樱桃视频在线观看一区| 丝袜诱惑制服诱惑色一区在线观看 | 国产精品女主播av| 自拍偷自拍亚洲精品播放| 亚洲天堂免费看| 伊人婷婷欧美激情| 免费精品视频最新在线| 精品一区二区在线看| caoporen国产精品视频| 色婷婷精品久久二区二区蜜臂av | 狠狠色狠狠色综合系列| 国产一区二区三区久久悠悠色av| 国产精品自拍一区| 欧美在线一二三| 7777精品伊人久久久大香线蕉的| 欧美在线|欧美| 日韩一级高清毛片| 久久香蕉国产线看观看99| 亚洲男人的天堂在线观看| 亚洲午夜激情网页| 日韩在线一区二区| 国产激情视频一区二区在线观看| 国产成人精品免费看| 日本大香伊一区二区三区| 在线播放欧美女士性生活| 91精品婷婷国产综合久久竹菊| 精品国产髙清在线看国产毛片| 国产亚洲短视频| 日韩国产在线观看一区| 国产在线不卡一区| 欧美色图在线观看| 久久久久国产精品麻豆| 国产精品毛片高清在线完整版| 一区二区三区四区高清精品免费观看| 国产精品久久久久久久久免费桃花| 首页综合国产亚洲丝袜| 国产精品18久久久久久久久久久久| 在线观看国产一区二区| 亚洲精品在线观看网站| 一区二区三区**美女毛片| 午夜精品久久一牛影视| 成人精品国产福利| 欧美日韩国产色站一区二区三区| 亚洲精品一线二线三线| 亚洲午夜久久久久| 国产91精品免费| 亚洲精品一线二线三线无人区| 亚洲三级在线免费| 国产一区二区三区四| 91麻豆精品91久久久久久清纯| 中文字幕 久热精品 视频在线| 国产综合成人久久大片91| 在线视频欧美精品| 精品国产一区a| 美女免费视频一区| 色噜噜夜夜夜综合网| 国产精品国产自产拍在线| 久久99精品久久久久婷婷| 91精品国产综合久久久久久漫画| 成人免费在线播放视频| 国内精品不卡在线| 欧美绝品在线观看成人午夜影视| 亚洲色图在线播放| 国产成人免费9x9x人网站视频| 成人一区二区三区| 国产亚洲人成网站| 日本不卡视频在线观看| 欧美一区二区三区在线观看| 亚洲丝袜另类动漫二区| av网站一区二区三区| 久久久国际精品| 午夜欧美电影在线观看| 欧美精品在欧美一区二区少妇| 国产精品第四页| www.亚洲色图| 欧美高清在线一区| jiyouzz国产精品久久| 欧美激情一区在线| 成人亚洲精品久久久久软件| 国产日韩欧美精品在线| 日日夜夜精品视频免费| 91精品国产综合久久久久久| 亚洲一本大道在线| 3751色影院一区二区三区| 亚洲成人777| 欧美成人一区二区三区在线观看| 强制捆绑调教一区二区| 67194成人在线观看| 日韩高清不卡一区二区三区| 欧美精品电影在线播放| 视频一区欧美日韩| 欧美日韩国产在线播放网站| 亚洲二区视频在线| 欧美日韩视频专区在线播放| 美腿丝袜亚洲三区| 欧美精品一区二区在线观看| 成人黄色综合网站| 国产精品久久久久久久久果冻传媒| 91浏览器打开| 亚洲第一福利视频在线| 欧美在线高清视频| 久久av老司机精品网站导航| www久久久久| 一本到三区不卡视频| 亚洲激情综合网| 日韩午夜精品视频| 国产麻豆精品95视频| 亚洲精品视频在线观看网站| 欧美综合亚洲图片综合区| 日本成人在线不卡视频| 久久伊人中文字幕| 国产成人久久精品77777最新版本| 亚洲欧美日韩在线播放| 欧美少妇性性性| 成人午夜私人影院| 亚洲一区二区视频在线| 久久免费看少妇高潮| 99国产精品99久久久久久| 美女网站在线免费欧美精品| 国产亚洲一二三区| 欧美精品久久一区| 国产又粗又猛又爽又黄91精品| 久久久久久夜精品精品免费| 91麻豆文化传媒在线观看| 亚洲国产中文字幕在线视频综合| 久久亚洲精精品中文字幕早川悠里 | 婷婷综合久久一区二区三区| 欧美成人女星排名| 91浏览器在线视频| 全部av―极品视觉盛宴亚洲| 国产精品久久久久久久裸模| 欧美人妇做爰xxxⅹ性高电影| 成人免费毛片片v| 亚洲国产精品久久久久婷婷884| 欧美军同video69gay| 丁香激情综合五月| 一区二区三区日韩在线观看| 久久先锋影音av| 欧美日韩一区三区四区| 成人av动漫网站| 卡一卡二国产精品 | 久久久国产精品不卡|