COM DLL和ActiveX控件之间的区别

时间:2009-11-19 13:24:59

标签: dll com activex

我知道几个相似之处..

  • 两者都不能自己执行。它需要一些程序来实例化它。

  • COM DLL& ActiveX控件是平台独立的。 (是这样......?)

  • 两者都需要支持界面IUnknown并公开三种方法QueryInterfaceAddRefRelease

  • 完成使用和注销后,还需要注册。

但他们有什么不同?有人可以列出来吗?

另外我的理解是ActiveX控件是OLE自定义控件(OCX)。我听说过像ActiveX DLL这样的术语。它是另一种形式的ActiveX控件还是其他不同的东西?

1 个答案:

答案 0 :(得分:16)

ActiveX是COM的一种风格。 COM +,OLE和DCOM也是COM的风格。 COM只是意味着组件对象模型。 ActiveX对象只是一个支持IUnknown的OLE对象。

COM是系统级标准,提供模型服务以便于构建更高级别的功能。 OLE和ActiveX是构建在COM基础之上的高级服务。 COM,ActiveX和OLE本质上非常相似,但ActiveX和OLE提供了更多的应用程序级功能。