IOleObject::SetClientSite メソッド (oleidl.h)
コンテナー内の "クライアント サイト" と呼ばれる表示場所を埋め込みオブジェクトに通知します。
構文
HRESULT SetClientSite(
[in] IOleClientSite *pClientSite
);
パラメーター
[in] pClientSite
コンテナー アプリケーションのクライアント サイト上の IOleClientSite インターフェイスへのポインター。
戻り値
このメソッドは、成功したS_OKを返します。 その他の可能な戻り値は次のとおりです。
リターン コード | 説明 |
---|---|
|
予期しないエラーが発生しました。 |
注釈
複合ドキュメント内では、各埋め込みオブジェクトに独自のクライアント サイト (表示される場所、ストレージ、ユーザー インターフェイス、およびその他のリソースに関する情報を受け取る場所) があります。 IOleObject::SetClientSite は、埋め込みオブジェクトがクライアント サイトへのポインターを取得できるようにする唯一のメソッドです。
呼び出し元へのメモ
コンテナーは、オブジェクトの作成時またはオブジェクトの初期化時に、そのクライアント サイトのオブジェクトに通知できます。オブジェクトを作成または読み込むときに、コンテナーはクライアント サイト ポインターを (他の引数と共に) OleCreate、 OleCreateFromFile、 OleCreateFromData 、 または OleLoad のいずれかのヘルパー関数に渡すことができます。 これらのヘルパー関数は、新しいオブジェクトのオブジェクト ハンドラーを読み込み、新しいオブジェクトへのポインターを返す前に、コンテナーの代わりに IOleObject::SetClientSite を呼び出します。
クライアント サイト ポインターを渡すと、クライアント サイトが要求を処理する準備ができていることをオブジェクト ハンドラーに通知します。 ハンドラーが読み込まれた直後にクライアント サイトの準備が整う可能性が低い場合は、コンテナーで NULL クライアント サイト ポインターをヘルパー関数に渡すことができます。 NULL ポインターは、使用可能なクライアント サイトがないことを示し、オブジェクトが初期化されるまでクライアント サイトのオブジェクト ハンドラーへの通知を延期します。 応答として、ヘルパー関数は オブジェクトへのポインターを返しますが、そのポインターを受信すると、コンテナーは新しいオブジェクトの初期化の一環として IOleObject::SetClientSite を呼び出す必要があります。
実装者へのメモ
実装は、単に参照カウントをインクリメントし、クライアント サイトへのポインターを格納することで構成されます。要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | oleidl.h |