Platform SDK: COM

OleCreateLink

Creates an OLE compound-document linked object.

WINOLEAPI OleCreateLink(
  LPMONIKER pmkLinkSrc,         //Pointer to moniker indicating 
                                // source of linked object
  REFIID riid,                  //Reference to the identifier of the 
                                // interfacer to be used to communicate 
                                // with the new object
  DWORD renderopt,              //Value from OLERENDER
  LPFORMATETC pFormatEtc,       //Pointer to a FORMATETC structure
  LPOLECLIENTSITE pClientSite,  //Pointer to an interface
  LPSTORAGE pStg,               //Pointer to the object's storage
  LPVOID FAR* ppvObj            //Address of output variable that 
                                // receives the interface pointer 
                                // requested in riid
);
 

Parameters

pmkLinkSrc
[in] Pointer to the IMoniker interface on the moniker that can be used to locate the the source of the linked object.
riid
[in] Reference to the identifier of the interface the caller later uses to communicate with the new object (usually IID_IOleObject, defined in the OLE headers as the interface identifier for IOleObject).
renderopt
[in] Specifies a value from the enumeration OLERENDER that indicates the locally cached drawing or data-retrieval capabilities the newly created object is to have. Additional considerations are described in the Remarks section below.
pFormatEtc
[in] Pointer to a value from the enumeration OLERENDER that indicates the locally cached drawing or data-retrieval capabilities the newly created object is to have. The OLERENDER value chosen affects the possible values for the pFormatEtc parameter.
pClientSite
[in] Pointer to an instance of IOleClientSite, the primary interface through which the object will request services from its container. May be NULL.
pStg
[in] Pointer to the IStorage interface on the storage object. This parameter may not be NULL.
ppvObj
[out] Address of pointer variable that receives the interface pointer requested in riid. Upon successful return, *ppvObj contains the requested interface pointer on the newly created object.

Return Values

S_OK
The compound-document linked object was created successfully.
OLE_E_CANT_BINDTOSOURCE
Not able to bind to source. Binding is necessary to get the cache's initialization data.

Remarks

Call OleCreateLink to allow a container to create a link to an object.

Requirements

  Windows NT/2000: Requires Windows NT 3.1 or later.
  Windows 95/98: Requires Windows 95 or later.
  Header: Declared in ole2.h.
  Library: Included as a resource in ole32.dll.

See Also

IOleObject::SetMoniker, IOleClientSite::GetMoniker