我在客户端的线程函数里接收服务器端发来的媒体地址,然后Windows Media player activex组件播放,10秒播放一个地址,怎么播放器总是出现闪烁,有时闪没了,对话框中看不到Windows Media player组件,过会又出现。不知咋回事,很晕!请教各位大侠!源码:
线程函数:
DWORD WINAPI ThreadProc(LPVOID pThis)
{
    CTcpClientDlg *pDlg = (CTcpClientDlg*)pThis;    char chr[5000];
    memset(chr,0,5000);
    CString url;
    CSocket socket;
    socket.Create();
    if(socket.Connect("192.168.1.250",9880))
    {
        
        
            while(!pDlg->m_bStopThread)
            {            socket.Send(headBuffer,headBuffer.GetLength());            socket.Receive(chr,4999);            CString temp,temp1;
            temp.Format("%s",chr);
            
            temp1=headBuffer+temp;
            cfile.SeekToEnd();
            cfile.Write(temp1,temp1.GetLength());
            pDlg->m_edit.SetWindowText(chr);
            pDlg->m_edit.GetWindowText(url);
                        
            pDlg->PostMessage(WM_MEDIAMSG,0,(LPARAM)url.GetBuffer());
            url.ReleaseBuffer();
                        Sleep(10000);
            }
//            free(buffer);
        }
        socket.Close();
    }else 
    {
        TRACE("Hello Connect failed Error:%d\n",WSAGetLastError());
    }
    pDlg->PostMessage(WM_THREADMSG,0,0);
    return 0;
}消息函数
LRESULT CTcpClientDlg::OnStartMedia(WPARAM wParam,LPARAM lParam)
{
    CString url;
    url=(char *)lParam;
    if(url.Find("Login failed")==-1)
        m_Player.put_URL(url);
        
    return -1;
}