コンポーネントの分類
クライアントはレジストリ内の CLSID の一覧を参照し、使用するコンポーネントを選択することはできますが、レジストリ内の各コンポーネントを読み込んで、サポートされているインターフェイスに対してクエリを実行するのは非常に時間がかかります。 コンポーネントのインスタンスを作成する前に必要なインターフェイスがコンポーネントでサポートされているかどうかを判断するために、コンポーネントをカテゴリに分類するメソッドが開発されました。
コンポーネント カテゴリは、CATID という名前の GUID が割り当てられているインターフェイスのセットです。 コンポーネント カテゴリ内のすべてのインターフェイスを実装するコンポーネントは、そのコンポーネント カテゴリのメンバーとして自身を登録します。 その後、特定のコンポーネント カテゴリに属するコンポーネントをレジストリから選択できます。 コンポーネント カテゴリのメンバーとして自身を登録することで、コンポーネントはコンポーネント カテゴリ内のすべてのメンバー インターフェイスをサポートすることを保証します。
コンポーネントは、多くのカテゴリのメンバーにすることができます。 コンポーネント カテゴリのサポート インターフェイスに限定されるわけではありません。 コンポーネント カテゴリのインターフェイスに加えて、任意のインターフェイスをサポートできます。
開発者がオブジェクトを手動で登録するコードを記述する必要があるコンポーネントの標準登録とは対照的に、コンポーネント カテゴリは、この作業の大部分を自動化します。 ICatRegister インターフェイスの 6 つのメソッドは、コンポーネント カテゴリを定義し、それらを実装または必要とするオブジェクトを登録します。 Component Categories Manager オブジェクトは、このインターフェイスを実装します。 コンポーネント カテゴリの使用方法の詳細については、 ICatRegister と ICatInformation を参照してください。
関連トピック