在DUILIb上加载第三方的OCX 控件

顾小白xx 2021-05-14 02:58:51
我用DUILIB加载OCX 控件是我自己写的。添加到DUILIB的时候总是加载不成功在网上也搜了不少的文章但是几乎都没有解决问题。我 不知道是不是我的OCX控件的问题。这个控件在MFC 的项目上使用完全没有问题的。
首先在使用OCX控件的时候先是按照官方提供的方法在xml文件里面写上ocx控件的csid然后按照流程加上去。失败
然后又按照网上的自己加一个控件然后重写createControl 函数
CControlUI* CWndUI::CreateControl(LPCTSTR pstrClassName)
{
if (_tcsicmp(pstrClassName, _T("Wnd")) == 0)
{
CWndUI *pUI = new CWndUI;
ocxCLASS*pOcx = new ocxCLASS();
pOcx->Create(_T("Ocx"), WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON, CRect(0, 0, 0, 0), CWnd::FromHandle(m_pManager->GetPaintWindow()), 0);
pUI->Attach(*pOcx);
return pUI;
}
return nullptr;
}

这样写的时候一直提示我不能实例化一个抽象类类型。。。不知道为什么。
...全文
2777 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
顾小白xx 2021-06-30

放弃OCX 控件了。

  • 打赏
  • 举报
回复
顾小白xx 2021-05-17
引用 1 楼 mmcanyu 的回复:
猜测CWndUI有个纯虚函数没有定义
提示是在我的ocxclass哪里提示的
  • 打赏
  • 举报
回复
zgl7903 2021-05-16
mmcanyu 2021-05-16
猜测CWndUI有个纯虚函数没有定义
  • 打赏
  • 举报
回复
发帖
ATL
加入

3231

社区成员

ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
申请成为版主
帖子事件
创建了帖子
2021-05-14 02:58
社区公告
暂无公告