Share via


IOleLink::Update (Compact 2013)

3/26/2014

This method updates the compound document's cached data for a linked object. This involves binding to the link source, if it is not already bound.

Syntax

HRESULT Update(
  IBindCtx* pbc
);

Parameters

  • pbc
    [in] Pointer to the IBindCtx interface on the bind context to be used in binding the link source.

    This parameter can be NULL.

    The bind context caches objects bound during the binding process, contains parameters that apply to all operations using the bind context, and provides the means by which the binding implementation should retrieve information about its environment.

    For more information, see IBindCtx.

Return Value

The following table shows the return values for this method.

Value

Description

S_OK

All caches were updated successfully.

CACHE_E_NOCACHE_UPDATED

The bind operation worked but no caches were updated.

CACHE_S_SOMECACHES_NOTUPDATED

The bind operation worked but not all caches were updated.

OLE_E_CANT_BINDTOSOURCE

Unable to bind to the link source.

Remarks

If pbc is non-NULL, the linked object's implementation of IOleLink::Update calls the IBindCtx::RegisterObjectBound method to register the bound link source. This ensures that the link source remains running until the bind context is released.

The current caches are left intact if the link source cannot be bound.

Notes to Callers

Your container application should call IOleLink::Update if the user updates the cached data for a linked object.

The user can update the cached data for a linked object by choosing the Update Now button in the Links dialog box.

Your container application can also call the IOleObject::Update method to update a linked object because that method - when called on a linked object - calls IOleLink::Update.

This method updates both automatic links and manual links. For manual links, calling IOleLink::Update or IOleObject::Update is the only way to update the caches. For more information about automatic and manual links, see IOleLink::SetUpdateOptions.

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Requirements

Header

Oleidl.h,
oleidl.idl

Library

ole32.lib,
uuid.lib

See Also

Reference

IOleLink
IBindCtx
IBindCtx::RegisterObjectBound
IOleLink::SetUpdateOptions
IOleObject::Update