クラス モニカー
クラスは通常、CoCreateInstance や CoGetClassObject などの関数に対する CLSID を使用して直接識別されますが、クラスはクラス モニカーと呼ばれるモニカーで識別される場合もあります。 クラス モニカーは、作成されるクラスのクラス オブジェクトにバインドされます。
モニカーを使用してクラスを識別する機能は、扱いにくい便利な操作をサポートします。 たとえば、ファイル モニカーは、従来、参照するファイルのクラスに関連付けられているクラスへのリッチ バインディングのみをサポートしました。Excel ファイルへのモニカーは Excel オブジェクトのインスタンスにバインドされ、GIF イメージへのモニカーは現在登録されている GIF ハンドラーのインスタンスにバインドされます。 クラス モニカーを使用すると、ファイル モニカーを使用してコンポジションを使用してファイルを操作するために使用するクラスを指定できます。 モニカーで構成された 3D グラフ 作成クラスのクラス モニカーを Excel ファイルに変換すると、3D グラフ オブジェクトのインスタンスにバインドし、Excel ファイルの内容を使用してオブジェクトを初期化するモニカーが生成されます。
したがって、クラス モニカーは、ファイル モニカーやアイテム モニカーなどの他の種類のモニカーとの合成に最も役立ちます。
クラス モニカーは、IClassActivator インターフェイスへのバインドをサポートするモニカーの右側にも構成できます。 この方法で構成すると、IClassActivator は、IClassActivator::GetClassObject を介してクラス オブジェクトとクラスのインスタンスにアクセスできます。 クラス モニカーは IMoniker::IsSystemMoniker を使用して識別できます。これは pdwMksys でMKSYS_CLASSMONIKERを返します。
プログラマは通常、CreateClassMoniker 関数または MkParseDisplayName を使用してクラス モニカーを作成します。 (「 IMoniker::P arseDisplayName for details.)
関連トピック