IQuickActivate::QuickActivate メソッド (ocidl.h)

クイック コントロールをアクティブにします。

構文

HRESULT QuickActivate(
  [in]      QACONTAINER *pQaContainer,
  [in, out] QACONTROL   *pQaControl
);

パラメーター

[in] pQaContainer

コンテナーに関する情報を含む QACONTAINER 構造体へのポインター。

[in, out] pQaControl

コントロールに関する情報をコンテナーに返す、コントロールによって入力された QACONTROL 構造体へのポインター。 このメソッドを呼び出すコンテナーは、この構造体のメモリを予約する必要があります。

戻り値

メソッドが成功した場合、戻り値はS_OK。 それ以外の場合は、E_FAIL。

解説

コントロールが IQuickActivate をサポートしていない場合、コンテナーはコントロールの読み込み時に特定のハンドシェイク操作を実行します。 コンテナーはコントロールの特定のインターフェイスを呼び出し、コントロールはコンテナーのクライアント サイト上の特定のインターフェイスに呼び出し戻します。 最初に、コンテナーはコントロール オブジェクトを作成し、 QueryInterface を 呼び出して、必要なインターフェイスを照会します。 次に、コンテナーはコントロールの IOleObject::SetClientSite を呼び出し、クライアント サイトへのポインターを渡します。 次に、コントロールはこのサイトで QueryInterface を 呼び出し、追加の必要なインターフェイスへのポインターを取得します。

QuickActivate メソッドを使用して、コンテナーは QACONTAINER 構造体へのポインターを渡します。 構造体には、コントロールに必要なインターフェイスへのポインターと、コントロールに必要なアンビエント プロパティの値が含まれています。 制御が戻ったとき、コントロールは、コンテナーが必要とする独自のインターフェイスへのポインターと追加のステータス情報を含む QACONTROL 構造体にポインターを渡します。

クイック アクティブ化が行われると、 IPersist*::Load メソッドと IPersist*::InitNew メソッドを呼び出す必要があります。 コントロールは、クイック アクティブ化中にコンテナーのシンクへの接続を確立する必要があります。 ただし、IPersist*::Load または IPersist*::InitNew が呼び出されるまで、これらの接続はライブになりません。

要件

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

関連項目

IPersistFile

IPersistStorage

IPersistStream

IPersistStreamInit

IQuickActivate