次の方法で共有


「COM レジストリ キー」を参照してください。

レジストリには、COM で使用される豊富な情報が含まれています。 最も重要な情報は、次のキーに格納されます。

キー 説明
AppID
1 つ以上の分散 COM オブジェクトの構成オプション (名前付き値のセット) をレジストリ内の 1 つの場所にグループ化します。 このキーの下のサブキーは、アプリケーション識別子 (AppID) をリモート サーバー名にマップするために使用されます。 共通のセキュリティと構成設定の管理を簡略化するために、同じ実行可能ファイルによってホストされる分散 COM オブジェクトが 1 つの AppID にグループ化されます。
CLSID
クラス識別子 (CLSID) は、COM クラス オブジェクトを識別するグローバル一意識別子です。 サーバーまたはコンテナーで埋め込みオブジェクトへのリンクが許可されている場合は、サポートされているオブジェクトのクラスごとに CLSID を登録します。 CLSID キーには、クラスが実行中の状態のときにクラスに関する情報を返すために、既定の COM ハンドラーによって使用される情報が含まれています。
アプリケーションの CLSID を取得するには、com Toolkit の \TOOLs ディレクトリにあるuuidgen.exeを使用するか、CoCreateGuid を使用します。
ProgID
プログラム識別子 (ProgID) は、CLSID に関連付けることができるレジストリ エントリです。 ProgID キーは、わかりやすい文字列を CLSID にマップします。 CLSID と同様に、ProgID はクラスを識別しますが、精度は低くなります。 CLSID を使えないプログラミング状況では、ProgID を使用できます。 ProgID はユーザー インターフェイスに表示しないでください。 ProgID は一意であることが保証されていないため、名前の衝突が管理可能な場合にのみ使用できます。
VersionIndependentProgID
ProgID を CLSID に関連付けます。 これは、オブジェクト アプリケーションの最新バージョンを決定するために使用されます。 ProgID と同様に、バージョンに依存しない ProgID を人間が判読できる名前で登録できます。
アプリケーションでは、VersionIndependentProgID キーの下にバージョンに依存しないプログラム識別子を登録する必要があります。 バージョンに依存しない ProgID は、アプリケーションのクラスを参照し、バージョンからバージョンに変更されることはありません。代わりに、すべてのバージョンで定数メイン変更されます。 マクロ言語で使用され、アプリケーションのクラスの現在インストールされているバージョンを参照します。 バージョンに依存しない ProgID は、オブジェクト アプリケーションの最新バージョンの名前に対応している必要があります。
file_extension
ファイル名拡張子を ProgID に関連付けます。
ファイル名拡張キーに含まれる情報は、システムモニカーと ファイル モニカーの両方で使用されます。 GetClassFile では、 ファイル名拡張キーを使用して、関連付けられている CLSID を指定します。
Interface
インターフェイス名をインターフェイス識別子 (IID) に関連付けることで、新しいインターフェイスを登録します。 これは、ID をインターフェイスに固有の情報にマップします。 この情報はメインプロセス境界を越えてインターフェイスを使用するために必要です。
新しいインターフェイスを追加するときは、COM が新しいインターフェイスを登録するためにインターフェイス キーを完了する必要があります。 新しいインターフェイスごとに 1 つの IID サブキーが必要です。
OLE
分散 COM オブジェクトの既定の起動およびアクセス許可と、CoInitializeSecurity を呼び出さないアプリケーションの呼び出し レベルのセキュリティ機能を制御します。 レジストリのこの部分へのフル アクセス権を持つのは管理者だけです。 他のすべてのユーザーは、読み取り専用アクセス権を持っています。

COM アプリケーションの登録