VC----COM

1.LPDISPATCH是COM编程中一项重大的接口应用,主要负责支持自动化的接口调用, 我们在一般性的编程中,主要用它的两个方法: 
GetIDsOfNames:传一个字符串给它,它返回ID,这个ID就是你要调用的功能   
Invoke:该函数就是通过这个ID调用的。


2.

Coinitialize  参数为保留参数,必须为NULL

CoInitialize是 Windows提供的API函数,用来告诉 Windows以单线程的方式创建com对象。应用程序调用com库函数(除CoGetMalloc和内存分配函数)之前必须初始化com库。  

返回值S_OK : 该线程中COM库初始化成功S_FALSE 该线程中COM库已经被初始化 CoInitialize () 标明以单线程方式创建。  使用 CoInitialize 创建可以使对象直接与线程连接,得到最高的性能。  

CoInitialize并不装载COM 库,它只用来初始化当前线程使用什么样的套间。使用这个函数后,线程就和一个套间建立了对应关系。线程的套间模式决定了该线程如何调用COM对象,是否需要列集等。  

CoInitialize ()并不会干扰客户和服务器之间的通信,它所做的事情是让线程注册一个套间,而线程运行过程中必然在此套间。   CoInitialize和CoUninitialize必须成对使用

在每个线程函数里,如果要使用COM对象就需要调用CoInitialize或CoInitializeEX 在线程退出的时候释放. 当然如果你的线程不需要COM对象,就没必调用.

COM(ComponentObjectModel,组件对象模型) 在Windows操作平台下,众多以COM形式提供的组件模块,如DirectX多媒体软件包、OLEDB/ADO数据库组件系统等,极大地丰富了操作系统的功能。由于COM机制允许任意两组件之间相互通信而不必关心是在何种计算机上的何种操作系统下运行,也不用关心组件是使用何种语言编制的,这使COM技术拥有了强大的生命力。尤其是Windows2000同COM的下一代产品COM+的结合更加紧密,将使COM/COM+技术得到更广泛的应用

初始化COM环境的目的是使调用COM的API工作正常,也就是在COM操作之前调用 ::CoInitialize或 ::CoInitializeEx就可以。位置不重要。





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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值