Few similarities I know..
Both cannot execute by themself. It needs some program to instantiate it.
COM DLL & ActiveX controls are platform independant. (is it so...?)
Both requires to support the interface IUnknown
and exposes three methods QueryInterface
, AddRef
, and Release
.
It also requires to be registered before using and un-registered after done with it.
But how are they different? Can someone please list it down?
Also my understanding is ActiveX controls are OLE custom controls (OCX). I have heard of terms like ActiveX DLLs. Is it another form of ActiveX control or something different?
ActiveX controls are component program objects that Microsoft developed to enable applications to perform specific functions, such as displaying a calendar or playing a video. An ActiveX control is a small program that other applications can reuse to enable the same functionality, without the extra development work.
The ActiveX EXE/DLL is normally used when you need to build a component that is separate from the main program. The concept is based on COM model. ActiveX DLL/EXE allows multiple applications to share the same code. This allows for scalability of programs, and saves time because you only need to write the code once.
ActiveX controls are small apps that allow websites to provide content such as videos and games.
There is no difference. They are both dlls. You can rename a dll to anything and still load and use it using LoadLibrary, GetProcAddress. While technically correct, (an OCX is a DLL) that's not a very useful answer.
ActiveX controls are small program building blocks that can be used to create distributed applications that work over the Internet through web browsers. Examples include customized applications for gathering data, viewing certain kinds of files, and displaying animation.
ActiveX is a set of object-oriented programming technologies and tools that Microsoft developed for Internet Explorer to facilitate rich media playback. Essentially, Internet Explorer uses the ActiveX software framework to load other applications in the browser.
ActiveX is a flavor of COM. COM+, OLE, and DCOM are also flavors of COM. COM just means Component Object Model. An ActiveX object is just an OLE object that supports IUnknown
.
COM is a system-level standard and provides model services to facilitate the construction of higher-level functionality. OLE and ActiveX are high-level services built on top of the COM foundation. COM, ActiveX, and OLE are very similar in nature but ActiveX and OLE provide more application-level features.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With