微软在其ActiveX技术中蕴含了"软件部件"的概念,而且进一步将这种技术拓展为DCOM技术。DCOM是对
原COM技术的延续,主要是增加了远程调用COM部件的功能。另外,由于它结合原来COM中的ActiveX技术,
使得原有的各种ActiveX部件,也因DCOM的兼容性而变成可被远程调用的部件。
COM/DCOM的区别与联系
其实这种提法本身就及不科学,DCOM本身就是COM的一种表现形式,但是由于大家听见COM一般就把它
当成在本地执行的COM,而DCOM当然就是分布的COM,在网络上的另一台计算机上执行.于是就诞生了
这篇COM与DCOM的区别与联系.
区别:
COM有两种存在形式,动态连接库和可执行程序,但DCOM必须是可执行程序.因为DCOM不可能在客
户程序的内存空间运行,所以不能是动态连接库.
COM(动态连接库形式)可以不用RPC通信,而DCOM必须使用RPC远程调用.
COM(动态连接库形式)与客户共同存在于同一内存空间,调用速度快,DCOM的速度只有COM的万分之一.
COM(动态连接库形式)的安全性不高,客户程序可以造成服务COM发生错误,DCOM安全性高,原因
也是COM与客户程序共用内存空间造成的.
COM程序配置简单,DCOM配置较复杂.毕竟DCOM牵涉到网络和安全性.
联系:
客户程序不必知道COM的存在形式,有统一的接口调用方式,客户程序甚至不知道COM对象的位置,
可能在同一台计算机上,也可以在半个地球的另一面;
由于DCOM本身就是COM的一种存在形式,具有许多共同点.