IOleClientSite::GetContainer  C8UF6H

Returns a pointer to the container s IOleContainer interface.

HRESULT GetContainer(

    LPOLECONTAINER FAR* ppContainer

//Indirect pointer to the interface on the object

   );

 

 

Parameter

ppContainer

[out] Indirect pointer to where the IOleContainer interface on the object should be returned. If an error is returned, this parameter must be set to NULL.

 

Return Values

S_OK

The pointer to the container s IOleContainer interface was successfully returned.

OLE_E_NOT_SUPPORTED

Client site is in OLE 1 container.

E_NOINTERFACE

The container does not implement the IOleContainer interface.

 

Remarks

If a container supports links to its embedded objects, implementing IOleClientSite::GetContainer enables link clients to enumerate the container s objects and recursively traverse a containment hierarchy. This method is optional but recommended for all containers that expect to support links to their embedded objects.

Link clients can traverse a hierarchy of compound-document objects by recursively calling IOleClientSite::GetContainer to get a pointer to the link source s container; followed by IOleContainer::QueryInterface to get a pointer to the container s IOleObject interface and, finally, IOleObject::GetClientSite to get the container s client site in its container.

Simple containers that do not support links to their embedded objects probably do not need to implement this method. Instead, they can return E_NOINTERFACE and set ppContainer to NULL.