• 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 > 一个基本COM问题,希望高手给个解答,谢了,百分相送

一个基本COM问题,希望高手给个解答,谢了,百分相送

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

佚名通过本文主要向大家介绍了99btgc01点com 不谢,2.maya3.com不谢,谢文东讲过的话百分之,谢荣鹏首席高手,校花的贴身高手谢雨枫等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 一个基本 COM 问题,希望高手给个解答,谢了,百分相送
描述:

library CCCLib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
[
uuid(0BDC1256-9AF0-46A0-BD71-3561FCD218BA),
helpstring("CCC Class")
]
coclass P645Meter
{
[default] interface ICCC;
interface IBBB;
interface IAAA;
};
};
在客户端我用  hr = p.CreateInstance(__uuidof(CCC));
可以正确得到 CCC 的接口,但是我现在得不到其他两个接口,希望哪位大侠能给个答案,谢了先
是不是用 QueryInterface() 啊?
可是我用了,却的不到正确应用,应该怎么用啊?
帮个忙吧


解决方案1:

1。如果用ATL开发,别忘了在 BEGIN_COM_MAP(CXXX) 中列出所有的接口。调用时用QueryInterface。用CComQIPtr 存储接口指针更简单。
2。组件不能继承,但接口可以继承。
欢迎访问我用 COM/ATL/WTL 写的报表构件。主页:www.GridppReport.com

解决方案2:

老大,贪多嚼不烂阿,先把基础的东西搞清楚吧。

解决方案3:

就用QueryInterface()
不能继承,能包含或聚集。

解决方案4:

聚合或者包容

解决方案5:

包容比较类似于设计模式中的工厂方法,外部组件和内部组件是一种使用/被使用的关系,外部组件实现一套和内部组件相同的接口,通过这些接口外部组件需要将所以关于内部组件接口的调用转发给内部组件。
聚集是直接将内部组件的接口暴露给客户,不需要外部组件的转发,这里最重要的就是AddRef/Relase/queryinterface三个函数的处理,不复杂但过程比较繁琐,耐心点看看资料就行了

解决方案6:

不能继承,可以采用聚集


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

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

  • 一个基本COM问题,希望高手给个解答,谢了,百分相送

相关文章

  • 2017-06-05 请教各位大侠,winceMFC怎么响应网页上的按钮信息啊?有什么方法?
  • 2017-06-04 系统全局内存释放问题
  • 2017-06-04 一个拷贝的delphi7程序,exe文件打不开
  • 2017-06-04 在去掉ActivX控件的提示后出现的问题
  • 2017-06-04 谁知道IE内置window对象包含在哪个控件或者dll里面
  • 2017-06-04 已经知道一个IDirectDrawSurface表面指针,请问如何判断它否是Overlay表面呢?
  • 2017-06-04 如何使ActiveX控件在设计时固定大小,就象VB中Timer控件一样
  • 2017-06-05 怎样把这个函数改成多线程的?
  • 2017-06-04 VC/MFC中如何获取外部的Word关闭事件
  • 2017-06-04 mfcactivex,那个ctrl类和page类如何传递参数?

文章分类

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

最近更新的内容

    • 如何实现调用其它程序并进行模拟键盘输入
    • 如何隐藏Word客户区的边框
    • 对话框在另一编辑框中打开,是怎么回事?
    • 提供质料!!!!
    • 单实例对象COM的多线程问题?
    • 求救:创建一个activex控件,如何连接数据库?
    • 请问有关ATL注册的问题
    • 关于windowsmedia的问题
    • 我怎样把DCOM的客户端配直在不同的客户机上。我的客户是在同一个网络的另一个机子上。主机为WIN2000,客户机显示RPC不能用。为什么?
    • 大家来救救火,COM+中返回记录集的错误,在线等待

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

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