谁能给我解释一下InvokeHelper()函数功能及它的参数含义?在线等待,急急急急急急急
谁能给我解释一下InvokeHelper()函数功能及它的参数含义?在线等待,急急急急急急急 问题点数:20、回复次数:4Top
1 楼cnshinhwa(月夜森林)回复于 2002-05-21 08:39:40 得分 20
首先,COM的基本原理是C++的虚函数,也就是vtable.
所谓的二进制兼容就是通过虚函数的调用来达到,因为
各个C++厂商的vtable的结构基本上是一样的。但是对于
vb等这样没有虚函数概念的软件,提供了一个自动化的
接口。在vb里面只需要实现一段代码,可以调用这个接口
,那么通过这个接口我就可以调用许多其他人开发的东西,
否则,vb其不对于每一个class factory,都要实现一段代码
来调用其他函数的接口,对于vb来说,这样既不现实也不可能,
因为不知道com的接口排列。试想一下在vc中,如果
其他人不告诉你这个com接口的定义,你能够使用它吗。通过IDispatch
来定义接口的布局,调用它的函数通过IDispatch中的Invoker来实现,
Invoker怎样调用虚函数是你自己内部的事情,vb只需要invoker我想要的
函数就可以了。避免了其它不支持虚函数的语言为了调用com而必须加入
虚函数的功能。Top
2 楼cnshinhwa(月夜森林)回复于 2002-05-21 08:41:24 得分 0
这种调用方法比较慢,因为它多了一层调用Top
3 楼wf031197(黑山老妖)回复于 2002-05-21 08:59:49 得分 0
我有点看不懂,以前接触的都是用什么createfile()打开串口等什么的,我想知道用这种方法的话,那没初始化设置等工作,在什么时候完成?还有能不能实现中断接收?谢谢,这个问题对我很重要,我可以给你再加分Top
4 楼wf031197(黑山老妖)回复于 2002-05-21 09:41:55 得分 0
vc书里面哪些相关章节讲到这些内容?Top




