使用VLC ActiveX 0.9.4,
在程序中将ActiveX放在一个窗口上,没写入任何代码,关闭程序时,出现ASSERT(m_dwRef <= 1);报错,m_dwRef值为2。
这个问题如何解决?

解决方案 »

  1.   

    没有释放组件接口,需要调用Release()释放
      

  2.   

    那如何释放呢?我添加了一个变量,自动生成了一个ActiveX的类,里面方法都有了。发现关闭程序的时候,连析构都走不到就出错了。释放应该在什么位置写呢?怎么写?
      

  3.   

    在CoUninitialize之前的任何地方都可以。
    接口释放要用iface->Release(),如果是封装类,要看怎么封装的,本质还是要调用Release
      

  4.   

    可是我根本就没有使用CoUninitialize,iface->Release()之类的东西,就是直接加入工具栏,拖到界面上使用的。如果要用这些应该在什么地方初始化呢?如何使用,请给个例子看看,谢谢
      

  5.   

    哦,我是用MFC调用的,我看别人写的程序就是直接拖上去用的,我的就是不行啊。。