OleCreateLink function (ole2.h)

Creates an OLE compound-document linked object.

Syntax

HRESULT OleCreateLink(
  [in]  LPMONIKER       pmkLinkSrc,
  [in]  REFIID          riid,
  [in]  DWORD           renderopt,
  [in]  LPFORMATETC     lpFormatEtc,
  [in]  LPOLECLIENTSITE pClientSite,
  [in]  LPSTORAGE       pStg,
  [out] LPVOID          *ppvObj
);

Parameters

[in] pmkLinkSrc

Pointer to the IMoniker interface on the moniker that can be used to locate the source of the linked object.

[in] riid

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).

[in] renderopt

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.

[in] lpFormatEtc

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 lpFormatEtc parameter.

[in] pClientSite

Pointer to an instance of IOleClientSite, the primary interface through which the object will request services from its container. This parameter can be NULL.

[in] pStg

Pointer to the IStorage interface on the storage object. This parameter cannot be NULL.

[out] ppvObj

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 value

This function returns S_OK on success. Other possible values include the following.

Return code Description
OLE_E_CANT_BINDTOSOURCE
Not able to bind to source.

Remarks

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

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header ole2.h
Library Ole32.lib
DLL Ole32.dll

See also

IOleClientSite::GetMoniker

IOleObject::SetMoniker