• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 源对象的MFC实现出错,立刻给分

源对象的MFC实现出错,立刻给分

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了mfc面向对象,mfc获取dc字体对象,mfc对象,mfc五子棋源代码,mfc源代码等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 源对象的MFC实现出错,立刻给分
描述:

1。m_xTBListener是源对象的CConnectionPoint继承对象的实例(BEGIN_CONNECTION_PART宏自动产生的)语句都没有问题。
但是在源对象里调用出接口函数是有问题,源码如下(仿msdn上的):
    const CPtrArray* pConnections = m_xTBListener.GetConnections();
    if (pConnections == NULL) {
AfxMessageBox("回调接口错误!");
return FALSE;
};
    int cConnections = pConnections->GetSize();
    ITBListener* pListener;
    for (int i = 0; i < cConnections; i++)
    {
        pListener = (ITBListener*)(pConnections->GetAt(i));
        ASSERT(pListener != NULL);
        pListener->TB_Transfer(pmsg);
    }
编译没有问题,但是在调用GetConnections函数时,内部的ASSERT(this)出异常。
苦思不得其错,请高手指点。
2。MFC下IConnectionPointContainer 接口的实现结构XConnPtContainer没有
FindConnectionPoint函数,我可以在源对象端调用IConnectionPointContainer
的函数吗?如何做?
谢谢。
解决立刻给分,不够加。


解决方案1:

我感觉你的第一个问题是因为:
客户调用的com的组件没有完全实例化起来,或者有两个com的组件
存在,调用时没有用到你想要的那个,你可以查一下组件进程实例的
个数情况。
提供的信息不够很难做出清晰的判断。

解决方案2:

要使用连接点,必须在CConnectionPoint派生类的构造函数中调用EnableConnections();以初始化m_pUnkFirstConnections。
楼主的“2。MFC下IConnectionPointContainer 接口的实现结构XConnPtContainer没有
FindConnectionPoint函数,我可以在源对象端调用IConnectionPointContainer
的函数吗?如何做?”是错的。
MFC实现了IConnectionPointContainer::FindConnectionPoint的,用COleConnPtContainer的成员函数实现的(可查看MSDN),所以不存在没有实现“FindConnectionPoint函数”。只需用
INTERFACE_PART(名字可能记错)宏指定派生类实现了IConnectionPointContainer接口即可。

解决方案3:

帮你顶一下。

解决方案4:

2,当然可以在源对象端只要你实现了连接点,调用的时候Fire_XXXXXXX();就可以了!


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • MFC可连接对象
  • mfc做的com对象的生存期。
  • 源对象的MFC实现出错,立刻给分

相关文章

  • 2017-06-04 脚本语言为什么要用IDispatch接口?
  • 2017-06-05 如何调用dll中的类和类的成员函数?
  • 2017-06-04 如何拦劫EXCEL的消息如双击、删除等事件?
  • 2017-06-04 如何在COM接口中传递IDL基本类型的数组
  • 2017-06-04 我的控件无法使TextBox产生Validate事件
  • 2017-06-04 用vc写的程序,如何在vb中调用
  • 2017-06-04 COM可以支持Socket么
  • 2017-06-05 MFC的webbrowser获取点击的html代码
  • 2017-06-05 救急啊,BHO问题,附完整实例代码,请花5分钟帮忙看下
  • 2017-06-04 IE7下的BHO,可以获取TabWindowClass窗口句柄,但是不能获取InternetExplorer_Server窗口的句柄?

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • MapX如何保存地图显示范围
    • 使用vc的mfc写了一个ocx控件,如何打包,签名,发布?
    • 有没有比较好的实现图文混合打印的DLL源码?急!高分!!
    • 在word里面内嵌的ActiveX控件,属性值变化以后,被保存到哪里?
    • 关于vc写入word,在xp下面正常,在win7下面异常
    • VSNET2003C++异常捕获奇怪问题
    • 请问如何给DBMS写ODBC驱动程序
    • ActiveX控件继承
    • 关于vc串口通信的问题,急!
    • WindowsImageAcquisitionWIA将设备上的图像保存到内存中?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有