IUnknown
IUnknown is the base interface of every other COM interface. IUnknown defines three methods: QueryInterface, AddRef, and Release. QueryInterface allows an interface user to ask the object for a pointer to another of its interfaces. AddRef and Release implement reference counting on the interface.