com组件

                                                                         Com组件总结

对于com对象来说,com接口能实现与外部联系的唯一途径,com组件可以提供多个com接口,所以在编写com组件时,无论com对象功能如何设计,只要com组件的接口的GUID不变化,那么就能在com客户端通过接口调用com对象。

当我们要注册com 组件时,首先必须为类库类型,其次需要声明接口并生成对应的GUID标识符,最后设置ComVisible为true,

这些接口在实现时,必须为public 否则 调用时 ,无法调用。

此时,在完成代码功能的实现后, 右击工程属性-》选中为com互操作注册,生成解决方案时,会生成.dll文件和.tlb文件,为com互操作这个选项,就将dll的路径注册到了电脑的注册表里。相当于实现了com的注册。

   将tlb移植到其他工程目录中,准备调用tlb文件时,需要用#import “…tlb”导入tlb文件,此时重新生成工程, 会在工程目录下生成tlh和tli两个文件。tlb文件为com类型库文件,所以通过编译器,会将tlb文件编译成tlh和tli文件.

tlh文件:

tli文件:

就是通过tli文件调用com接口,通过tlh 找到com对象GUID标识符,通过标识符找到com对象对应的dll,从而调用com对象。

所以当com对象功能变化时,重新编译一个dll,只要接口并没有变化,调用时,还是会通过接口调用新的dll。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值