VS2012下wmp控件的使用

apricoth 2013-11-19 10:17:43
在VS2012 MFC DIALOG下,加入wmp控件,然后生成控件变量,为何控件变量没有wmp的成员方法?必须要新引入一个wmp类,如何将wmp控件(继承于CWnd)和wmp(继承于OLE)关联起来呀?小白求解。

控件变量的.h文件
class COcx1 : public CWnd
{
protected:
DECLARE_DYNCREATE(COcx1)
//DECLARE_DYNCREATE(CMediaPlayer2)
public:
CLSID const& GetClsid()
{
static CLSID const clsid
= { 0x6BF52A52, 0x394A, 0x11D3, { 0xB1, 0x53, 0x0, 0xC0, 0x4F, 0x79, 0xFA, 0xA6 } };
return clsid;
}
virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle,
const RECT& rect, CWnd* pParentWnd, UINT nID,
CCreateContext* pContext = NULL)
{
return CreateControl(GetClsid(), lpszWindowName, dwStyle, rect, pParentWnd, nID);
}

BOOL Create(LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd,
UINT nID, CFile* pPersist = NULL, BOOL bStorage = FALSE,
BSTR bstrLicKey = NULL)
{
return CreateControl(GetClsid(), lpszWindowName, dwStyle, rect, pParentWnd, nID,
pPersist, bStorage, bstrLicKey);
}


wmp的.h文件
class CMediaPlayer2 : public COleDispatchDriver
{
public:
CMediaPlayer2(){} // 调用 COleDispatchDriver 默认构造函数
CMediaPlayer2(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
CMediaPlayer2(const CMediaPlayer2& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}

// 特性
public:

// 操作
public:


// IMediaPlayer2 方法
public:
double get_CurrentPosition()
{
double result;
InvokeHelper(0x403, DISPATCH_PROPERTYGET, VT_R8, (void*)&result, NULL);
return result;
}
void put_CurrentPosition(double newValue)
{
static BYTE parms[] = VTS_R8 ;
InvokeHelper(0x403, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, newValue);
}
double get_Duration()
{
double result;
InvokeHelper(0x3eb, DISPATCH_PROPERTYGET, VT_R8, (void*)&result, NULL);
return result;
}
...全文
204 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
忘世麒麟 2013-11-20
  • 打赏
  • 举报
回复
之前使用过该控件,我的看法是这样的,你可以参考一下: 首先要注册该wmp控件(注册方法可以百度一下)。 为何控件变量没有wmp的成员方法?控件的成员变量类型必须是:CWMPPlayer4,或者是其他。 以上内容在VC6中通过。而且关联之后的成员变量有自己的方法。

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧