I have just finished my first COM server DLL. And it runs smoothly. So I'd like to show my understanding for now and hear your critics.

**1-** How COM simply works? COM - "The Call Chain"

COM Lib methods -> Traditional DLL exports -> Classes encapsulated in the COM DLL

**2-** With C++, the benefits like "interface" in OOP can only be taken advantage of at the source level.
With COM, these benefits can be used at a binary level.

**3-** Some illustration about **interface**

&pInterface -------> pInterface ----------> Interface-----------------> methods

```
  Ixx **         Ixx *      (method table)

 (void **)

```

A Interface is a data structure in memory. It's nothing but a memory area containg a method table.

**Is my understanding alright?** 

Thanks for your revision.