还有一个问题顺便问一下:我想学习dcom,但很多文章书籍都只是简单地把dcom一笔带过,把重点都放在com上,我想知道,dcom究竟是什么?为了支持分布式计算,他对com有哪些优化与扩展??谢谢!!1

解决方案 »

  1.   

    普通函数调用是我们的程序调用其他模块中的(如DLL)或我们自己定义的函数,如果把这种调用称作call forward,那么我们的程序定义的函数,自己不掉用而让其它模块或程序调用,就称为回调函数call back,想象一下调用的方向,很容易理解的。
    窗口过程window procudure就是一个典型的call back函数,我们的程序定义了这个函数,却从来不调用它,而由操作系统调用。
      

  2.   

    dcom组件没有和在制作上没有区别。也就是所谓的位置透明。只是在别的要调用你的组件的机器上的注册表里要注册,最精简的是:
    HKEY_CLASSES_ROOT\CLSID\{Your_clsid}: AppID={your_appid}
    HKEY_CLASSES_ROOT\AppID\{Your_AppID}: RemoteServerName=Your_DNS_name or NetBIOS name or IP
    其中,AppID可以等于CLSID,或者自己再生成一个。基于经验,请高手指正.
      

  3.   

    现在的COM+机制涵盖了DCOM,包括位置无关性等等,还有很多增强功能,如对象池等。这些属性只要在部署COM组件的服务器端配置好,然后将它的代理导出来,安装在客户端就行了,COM库会完成这些工作。