How In-Place Activation Works

In-place activation uses a series of well-defined protocols through which the container and the object communicate. OLE itself does hardly anything except route some messages to the proper windows. So in-place activation depends almost entirely on a container and an object communicating with each other through the OLE-defined interfaces IOleInPlaceFrame, IOleInPlaceUIWindow, IOleInPlaceSite, IOleInPlaceObject, and IOleInPlaceActiveObject.

In this section, we'll first see where these interfaces are placed and then take a quick look at the member functions they contain. We'll also see how they are used by following an entire in-place–activation session.