progid

COM オブジェクトの ProgID を指定します。

構文

[ progid(name) ];

Parameters

name
オブジェクトを表す ProgID。

ProgID は、COM/ActiveX オブジェクトを識別するために使用される、クラス識別子 (CLSID) のユーザーが判読できるバージョンを表します。

解説

progid C++ 属性を使用すると、COM オブジェクトの ProgID を指定できます。 ProgID は、name1.name2.version という形式になります。 ProgID の version を指定しない場合、既定のバージョンは 1 になります。 name1.name2 を指定しない場合、既定の名前は classname.classname になります。 progid を指定せずに vi_progid を指定した場合、name1.name2 は vi_progid から取得され、(次の連続番号) バージョンが追加されます。

progid を使用する属性ブロックでも uuid が使用されていない場合、コンパイラはレジストリを調べて、指定された progid の uuid が存在するかどうかを確認します。 progid が指定されていない場合は、バージョン (コクラスを作成する場合は、コクラスの名前) を使用して progid を生成します。

progid は coclass 属性を意味します。つまり、progid を指定する場合は、coclass 属性と progid 属性を指定することと同じです。

progid 属性を指定すると、指定した名前でクラスが自動的に登録されます。 生成された .idl ファイルには progid 値が表示されません。

この属性が ATL を使用するプロジェクト内で使用されている場合、属性の動作は変わります。 上記の動作に加えて、この属性で指定された情報は、coclass 属性によって挿入される GetProgID 関数で使用されます。 詳細については、coclass 属性を参照してください。

例

progid の使用例については、コクラスの例を参照してください。

要件

属性コンテキスト 値
適用対象 $
反復可能 いいえ
必要な属性 なし
無効な属性 なし

属性コンテキストの詳細については、「 属性コンテキスト」を参照してください。

関連項目

IDL 属性
クラス属性
Typedef、Enum、Union、および Struct 型の属性
ProgID キー