COM DLL和ActiveX控件之间的区别

AKN*_*AKN 14 com dll activex

我知道几个相似之处..

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

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

  • 双方需要支持该接口IUnknown,并公开三个方法QueryInterface,AddRefRelease.

  • 它还需要在使用之后注册,并在完成之后注册.

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

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

Jor*_*mer 19

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

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