发哪些代码?这个是ACTIVEX里看视频的函数原型:
m_pMediaPlayer = ROSEEK_MPOpen(const char* ip, HWND hwnd );实际我写成:m_pMediaPlayer = ROSEEK_MPOpen(IP, GetSafeHwnd());
其中的参数GetSafeHwnd(); 是视频显示的句柄

解决方案 »

  1.   

    视频控件是CStatic吗?如果是要加上SS_NOTIFY属性,否则不响应鼠标点击事件
      

  2.   

    TO:caoheng520
    在activex里的GetSafeHwnd(),应该是窗口的句柄,你是说使用cstatic的句柄来播放视频?然后加上SS_NOTIFY属性吗?
      

  3.   

    对,你到代码里仔细看看,一般视频播放,实际图像都是画在CStatic上的,也就是说GetSafeHwnd()获得到的句柄是一个CStatic的句柄
      

  4.   

    当然并不是说一定要画在CStatic上,任何控件上都可以画的,我说的一般情况,至少我是这么做的
      

  5.   

    你说的是在编写ACTIVEX控件的时候?
      

  6.   

    如果我在编写ACTIVEX的时候在,窗口上放多个static,但它的ID都是一样的IDC_STATIC,为何?
      

  7.   

    static就这样,你可以手动修改ID
      

  8.   

    long cxxxxXCtrl::play()
            {
               ...
               HWND  m_hwnd=GetDlgItem(IDC_STATIC)->GetSafeHwnd(); //1
       //m_hwnd=GetDlgItem(IDC_STATIC)->m_hWnd; //2
       m_pMediaPlayer = ROSEEK_MPOpen(lpServerIP, m_hwnd);
               ....
            }使用1,GetSafeHwnd()时,在IE里调用播放接口,视频是出来了,但不是在控件上显示的,又弹出一个新窗口显示视频
    使用2,m_hwnd时,在IE里调用播放接口,IE直接关闭。请指点
      

  9.   

    这个你要看ROSEEK_MPOpen的代码啊
      

  10.   

    这个是ROSEEK_MPOpen(const char* ip, HWND hwnd );
    原型
      

  11.   

    可是没有弹出新窗口的代码....,都是调用的同一个接口您能否给点实例代码?
    另外你说的那个NOTIFY我也勾上了
      

  12.   

    就是这个ROSEEK_MPOpen(const char* ip, HWND hwnd );函数,传进去一个IP和一个句柄,这个句柄就是显示视频用的
      

  13.   

    你需要重写CStatic,然后添加WM_LBUTTONDBLCLK。静态框没通知消息呀。
    一个建议句柄用对话框不是很好。啥消息都ok,就是没PreTranslateMessage这个。
      

  14.   

    楼上兄台,能否给个示例? [email protected]