VC Com编程笔记 [2004年7月5日 14:58]

原创 2004年07月11日 04:01:00

这几天一直在考虑接下来应该学什么呢?

犹豫来犹豫去,什么都想学,总想做个比较大一点的东西,本来想给自己做个网站,JDK装了,Tomcat装了,JAVA知识不够,一切都需要从零开始。昨天晚上一个激灵,突然又想把在公司学到的一些零碎银行业务知识用Com组织起来,参加了公司的项目(公司用BCB),但是真正自己学到的东西却是不多,真正实现才能说自己学到了。更主要在实现的过程中,必然会遇到许多问题,解决问题,才是学习的最好方法。

已经有Com的一点点思想,真正的Com组件还没做过,动起手来还是挺麻烦。就从现在开始,把整个过程遇到的问题,在这里写出来:

1.从多接口派生对象,在派生列表中加上

 public IDispatchImpl

假设两个接口ITemplCollection,IBankCollection都是从IDispatch派生出来,则需要在COM_MAP中,将COM_INTERFACE_ENTRY(IDispatch) 改成

COM_INTERFACE_ENTRY2(IDispatch/*父接口*/, ITemplCollection/*其中一个子接口*/)

这样做的目的是为了选定当查询IDispatch接口的时候的路径

2.怎么样生成一个不需要实现类的接口比较方便,直接写??那可要自己用GUID工具生成序列号。用VC插入ATL Object,然后删除cpp和h文件,编译出错,暂时还不知道怎么解决。好像是生成的接口,如果一定要从它派生的话,接口函数一定要实现,郁闷。

3.接口模板的问题,想做一个对大部分接口都有用的Collection接口,比如:

有一个IPersonCollection接口,里面的一个函数Add(IPerson *person) 如果做成模板,则所有的接口,什么IPerson,IAnimal都可以放进去
这个Add放到接口里面,自然在idl文件也需要体现出来

似乎需要用到模板类,在对象类中添加模板类还是容易点,可是如果要用一个Add(IXXX *pXXX)IXXX是任意的一个接口,在这个Add函数上面用模板该怎么用呢,主要是idl文件中该怎么写。想到一个方法是Add(IDispatch *pDisp),不过这样每次都要转换成IDispatch就显得比较麻烦了。

后注:找到一个Com模板的例子,看来和类模板还是有很大的区别,研究研究——ATL源代码:templateinterface_src

http://www.vckbase.com/code/listcode.asp?mclsid=17&sclsid=1703&page=7

4.在同一个组件中访问另外一个接口的数据

IA有属性int a,IB中有函数RemoveA(int a),并且有一个vector m_vector是CComVariant的列表,怎么才能正确删除m_vector中有IA:a=a的节点呢?现在关键是有了IA *pA;想取得他的a值,用pA->a出错,说a不是pA得成员,怎么回事。难道还得转成Com对象,具体怎么做呢

大富翁富翁笔记03年7月5日

  • 2006年01月13日 09:51
  • 1.04MB
  • 下载

简单的字谜游戏--可扩展--2015年7月25日14:58:00V1.1版

1、string类find匹配法 #include #include #include #include using namespace std; //字谜单词 hone,uito,raia,...
  • q547550831
  • q547550831
  • 2015年07月24日 00:30
  • 1020

2016年7月5日遇到的BUG统计

1. 问题:     出现原因:这三个文件夹不小心删除掉了 解决方法:从别的项目中复制过来 解决时间:5分钟   2.问题: 出现原因:在使用initWithFile改变图片类型的时候,也改变了图...
  • Cleve_baby
  • Cleve_baby
  • 2016年07月05日 15:34
  • 123

成都传智播客7月5日java基础班圆满开班!

成都传智播客口碑的力量再次无法忽视——7月5日Java基础班正式开班,学员60% 都是朋友或者亲戚介绍过来的,相信成都传智播客的实力确实说服了他们,才让他们免费为我们做广告!      ...
  • villainy13579
  • villainy13579
  • 2014年07月08日 16:43
  • 996

7月5日云栖精选夜读:物联网技术在农业领域的应用

近年来,世界农业物联网技术不断发展,在农业物联网感知技术、数据传输技术、智能处理技术等方面取得了很大的进展,随着现代农业自动化需求的不断增长和信息技术的发展,农业物联网在物理感知、数据传输、智能处理、...
  • Gamay
  • Gamay
  • 2017年07月06日 13:40
  • 288

讲座:软件企业常见问题和系统性解决方法(7月5日 北京)

“如何管理软件企业”——林锐博士免费讲座(7月5日北京)【睿泰科技集团】上海漫索公司总经理林锐博士研究IT企业研发管理十余年,访谈数百家IT企业,积累了大量的企业问题和富有成效的对策。本公司致力于创作...
  • hzbooks
  • hzbooks
  • 2011年07月01日 02:38
  • 913

7月5日最新极品时刻表

  • 2010年07月14日 09:51
  • 714KB
  • 下载

最新微信管家7月5日 新界面 微官网微医疗wifi微信墙

  • 2014年07月06日 15:13
  • 138B
  • 下载

58同城电话号码识别程序(针对12月5日升级)_C#版

  • 2012年12月05日 08:49
  • 46KB
  • 下载

全国2004年7月高等教育自学考试计算机网络技术试题

  • 2008年12月05日 22:36
  • 6KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VC Com编程笔记 [2004年7月5日 14:58]
举报原因:
原因补充:

(最多只允许输入30个字)