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.name2vi_progid から取得され、(次の連続番号) バージョンが追加されます。

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

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

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

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

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

必要条件

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

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

関連項目

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