Share via


IOleLink::Update メソッド (oleidl.h)

リンクオブジェクトの複合ドキュメントのキャッシュデータを更新します。 リンク ソースがまだバインドされていない場合は、リンク ソースへのバインドが含まれます。

構文

HRESULT Update(
  [in] IBindCtx *pbc
);

パラメーター

[in] pbc

リンク ソースのバインドで使用されるバインド コンテキスト上の IBindCtx インターフェイスへのポインター。 このパラメーターは、NULL でもかまいません。 バインド コンテキストは、バインド プロセス中にバインドされたオブジェクトをキャッシュし、バインド コンテキストを使用するすべての操作に適用されるパラメーターを含み、バインド実装がその環境に関する情報を取得する手段を提供します。 詳細については、「 IBindCtx」を参照してください。

戻り値

このメソッドは、成功したS_OKを返します。 その他の可能な戻り値は次のとおりです。

リターン コード 説明
CACHE_E_NOCACHE_UPDATE
バインド操作は機能しましたが、キャッシュは更新されませんでした。
CACHE_S_SOMECACHES_NOTUPDATED
バインド操作は機能しましたが、すべてのキャッシュが更新されたわけではありません。
OLE_E_CANT_BINDTOSOURCE
リンク ソースにバインドできません。

注釈

呼び出し元へのメモ

エンド ユーザーがリンク オブジェクトのキャッシュされたデータを更新する場合、コンテナー アプリケーションは Update を呼び出す必要があります。

エンド ユーザーは、[リンク] ダイアログ ボックスの [今すぐ更新] ボタンを選択して、リンク オブジェクトのキャッシュされたデータを更新できます。 OleUIEditLinks 関数を使用して [リンク] ダイアログ ボックスを表示する場合は、IOleUILinkContainer インターフェイスを実装する必要があります。 このダイアログ ボックスでは、エンド ユーザーが [今すぐ更新] ボタンを選択すると、IOleUILinkContainer::UpdateLink の実装が呼び出されます。 そのメソッドの実装で Update を呼び出すことができます。

コンテナー アプリケーションは Update を呼び出してリンク オブジェクトを更新することもできます。これは、そのメソッドがリンク オブジェクトで呼び出されたときに Update を呼び出すからです。

このメソッドは、自動リンクと手動リンクの両方を更新します。 手動リンクの場合は、 キャッシュを更新 する唯一の方法は Update または Update を呼び出すことです。 自動リンクと手動リンクの詳細については、「 IOleLink::SetUpdateOptions」を参照してください。

実装に関する注意事項

pbcNULL 以外の場合、リンク オブジェクトの Update の実装では、バインドされたリンク ソースを登録するために IBindCtx::RegisterObjectBound が呼び出されます。 これにより、バインド コンテキストが解放されるまでリンク ソースが実行されたままになります。

リンク ソースをバインドできない場合、現在のキャッシュはそのまま残ります。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー oleidl.h

こちらもご覧ください

IBindCtx::RegisterObjectBound

IOleLink

IOleLink::SetUpdateOptions

IOleLink::Update

IOleUILinkContainer

OleUIEditLinks