progid
COM オブジェクトの ProgID を指定します。
[ progid(
name
) ];
パラメータ
name
オブジェクトを表す ProgID。ProgID は、COM オブジェクトと ActiveX オブジェクトの識別に使用するクラス ID (CLSID) のうち、ユーザーが判読できる ID を示します。
解説
C++ 属性 progid を使用して、COM オブジェクトの ProgID を指定できます。ProgID の形式は、name1.name2.version です。ProgID の version を指定しない場合、既定のバージョンは 1 です。name1.name2 を指定しない場合、既定の名前は classname.classname です。progid を指定せずに vi_progid を指定した場合は、vi_progid の name1.name2 が使用され、次の連番のバージョンが追加されます。
progid を使用する属性ブロックで uuid を使用しない場合は、コンパイラがレジストリを調べ、指定された progid に対応する uuid が存在するかどうかを確認します。progid を指定しない場合は、バージョン (およびコクラスを作成する場合は、コクラス名) を使用して progid を生成します。
progid は属性 coclass を暗黙に表します。つまり、progid の指定は属性 coclass と progid の指定と同じです。
属性 progid を設定すると、指定した名前でクラスが自動的に登録されます。生成される .idl ファイルに progid 値は表示されません。
ATL を使用するプロジェクト内でこの属性を使用すると、属性の動作が異なります。上記の動作のほかに、この属性を使って指定した情報が属性 coclass によって挿入された GetProgID 関数で使用されます。詳細については、属性 coclass のトピックを参照してください。
使用例
progid の使用例については、「coclass」を参照してください。
必要条件
属性コンテキスト
対象 |
class、struct |
複数回の適用 |
不可 |
必要な属性 |
なし |
無効な属性 |
なし |
属性コンテキストの詳細については、「属性コンテキスト」を参照してください。