What is the difference, if any, between OLE and COM?
Answer Posted / chandrasekharreddy siddamreddy
OLE
Is Windows 3.0's most exciting technology: the abilty to
Embed and Link Objects between applications. It's first
incarnation was based on DDE dialogs.
COM
When OLE expanded, it was obvious that DDE was not firm
grounds, so Microsoft decided to create a new foundation. A
binary compatible, language independent, extremely
lightweight (practicaly no runtime) protocol. That is the
Component Object Model. It defines binary interfaces and
allows programmes to commit to them (implement) and use
those functional contracts.
OCX
One of the most natural uses of COM was the replacement of
old Visual Basic controls (VBX) for 32 bit more usable Ole
Custom Controls (OCXs). There was a set of interfaces that
allowed you to expose your object to be used on fellow
programmer's toolbox.
ActiveX
Enter the Internet and Internet Explorer. Microsoft wanted
to make the Web Browser experience richer and so you could
embed an OCX as part of a page content. Problem was, the
ammount of required interfaces was too large and
downloading such entities on demand required time. So the
standard was trimmed down to the necessary interfaces and
renamed ActiveX. An ActiveX control is simply any COM
object.
And all this is history, I mean, the new grounds for
Microsoft technology is now .NET and not COM. Problem is,
there isn't a replacement for OLE (embedding, drag and
drop, etc) -at least that I know of- based upon .NET.
| Is This Answer Correct ? | 4 Yes | 1 No |
Post New Answer View All Answers
Can I use com components from .net programs?
What is the difference between aggregated and contained objects?
What are queued components?
Does .net replace com?
Can you explain what is dcom?
Define and explain about COM?
Which namespace do the classes, allowing you to support COM functionality, are located?
Once I have developed the com wrapper do I have to still register the com in registry?
how to call a dll as a COM dll?
Explain Futures of COM?
Is dcom dead?
Suppose we have object B and aggregated object C (in- proc server), created by B. Can you access any interface of B from C?
What is the use of com component in .net?
Suppose we have object b and aggregated object c (in- proc server), created by b. Can you access any interface of b from c? What?s the difference between aggregated and contained objects?
How to create an instance of the object in COM?