我也是刚刚学com/dcom , 
没有tlb ,你根本得不到classid 和接口信息啊,
可户端好象就没有办法编了,能把你的例子给我看看吗?[email protected]

解决方案 »

  1.   

    呵呵,我做的例子还很简单,主要就是利用DCom连接服务器后只需要调用服务器相关方法就好了。
    现在我的例子还有点见不得人哦~~~哈哈
      

  2.   

    还有,office所有模块都是Com服务器,那么它安装在每台不同的电脑里的时候他的classid会改变吗???那么Delphi中相关的office控件是如何封装office服务器的classid与方法的呢??
      

  3.   

    你好,我也是刚进入com的。
    我可以向你推荐《com本质论》这本书。写得不错。
    可以解决你的上面问题。以我个人的经验是应该先了解com的本质和优点。怎么实现才可以看看几个实例。
      

  4.   

    1.lib文件中存放的是要使用的com控件的接口的方法和属性的描述信息,有了 这些信息才可以创建出相应的COM实例。其实你可以把COM控件看做是一个  类,那么要创建一个类的实例,你就应该给出类的定义信息,那么lib文件 中其实就是这个类的定义信息。我这样说可能不是很正确。
      

  5.   

    我个人看法如果Com服务器一定要tlb文件才能调用的话无法实现跨语言编程。Com之所以说他好用是因为它有个概念是定义了统一的二进制编码,就是无论用何种语言编码,他编译出的二进制文件是一样的,那么我觉得他一定可以摆脱Tlb文件实现Com服务器的调用。
      

  6.   

    1, COM里面不一定要包含类型库的. 类型是方便客户端调用.
    VB和DELPHI都可以使用IDISPATCH轻松的调用COM(这儿的COM要实现了IDISPATCH)
    这样是不需要类型库的.2,线程是在COM里面非常重要的,特别是进程外COM..有些东西只是你没有留意到.
    3,classid 是COM的标识,同一个COM在任何时候classid都不变.
      

  7.   

    http://www.csdn.net/expert/topic/863/863365.xml?temp=.3575861