The IObjectWithSite interface provides simple objects with a light-weight "siting" mechanism. This allows simple objects to communicate directly with their container site objects, allowing them to manage the site object by themselves.
|If you use IObjectWithSite, do not use the Windows Embedded CE IOleObject interface.|
A container can pass the IUnknown pointer of its site to an object through IObjectWithSite::SetSite. Callers can also retrieve the latest site passed to IObjectWithSite::SetSite through IObjectWithSite::GetSite. This usage provides a hooking mechanism, allowing third parties to intercept calls from an object to its container site object.
A container calls the IObjectWithSite::SetSite method to provide an object with an interface pointer to its site.