COM是microsoft制定的一个组件软件标准,跟unix上的CORBA一样。凡是遵循COM标准开发出来的组件称为COM组件。简单的说就是要实现在二进制方式的重用 。
在windows平台上,COM的实现形式有DLL(进程内组件)和EXE(进程外组件)2种。
ActiveX是Microsoft提出的一组使用COM(Component Object Model,部件对象模型)使得软件部件在网络环境中进行交互的技术集。它与具体的编程语言无关。作为针对Internet应用开发的技术,ActiveX被广泛应用于WEB服务器以及客户端的各个方面。同时,ActiveX技术也被用于方便地创建普通的桌面应用程序,此外ActiveX一般具有界面。
COM为一通用的组件规范,它只是个规范,并不涉及具体的实现
ActiveX是基于COM规范而产生的,是原有OLE控件的扩展版本,它是实现了多种标准接口的COM组件,其实关于这两者的产生根源与发展的内容,在大多数涉及ActiveX开发的书中都有描述,AxtiveX的底层技术是com。
COM 组件就是一组接口的集合,实现了 IDispath 接口的 COM 组件叫做 自动化组件。在自动化组件的基础上,在实现规定的接口就称为 ActiveX 组件,Ocx 是 Activex 的文件载体
一般来讲 ,一个 ActiveX 对应一个 Ocx 文件, 如果愿意, 一个Ocx 文件也可以包含多个 ActiveX 控件