【在线等】利用MFC和Windows MediaPlayer做简易播放器时控制按键的问题

在用CWMPControl 类时,我的是vc2008 ,里面的CWMPControls的类是继承自CWnd,
m_control=static_cast(m_player.get_controls());

执行这个语句是提示错误:
rror C2440: 'static_cast' : cannot convert from 'LPDISPATCH' to 'CWMPControls'
在网上查了很多资料,说的是这个类继承自CWnd的话,不能转换格式,所以我自己添加了个类 CWMPControls(这个类是继承自COleDispatchDriver的),
但是还是出现了这个同样的错误:
rror C2440: 'static_cast' : cannot convert from 'LPDISPATCH' to 'CWMPControls'

不知道怎么办了 ,求解答。在线等。

3个回答

你的m_control变量类型不对,转换有问题,而且你可以直接用get_controls获取的赶返回值直接使用好了。

以下内容使用VS2005
1.在资源中创建了一个Dialog,在上面放了一个MediaPlayer控件,然后用向导导出MediaPlayer库中的CWMPPlayer,CWMPSettings,CWMPControls类,通过关联变量的方式关联了MediaPlayer控件到变量m_pWinPlayer。但是在使用的时候发现CWMPPlayer的get_controls返回的是LPDISPATCH的指针!这让我无法调用CWMPControls类中定义的方法,要如何才能解决此问题?

m_controls = static_cast(m_player.get_controls());

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问