次の方法で共有


licensed

COM オブジェクトがライセンスされており、IClassFactory2 を使用してインスタンスを作成する必要があることを示します。

[licensed]

解説

C++ 属性 licensed の機能は、Microsoft インターフェイス定義言語 (MIDL: Microsoft Interface Definition Language) 属性 licensed と同じです。

使用例

// cpp_attr_ref_licensed.cpp
// compile with: /LD
#include "unknwn.h"
[object, uuid("00000000-0000-0000-0000-000000000001")]
__interface IMyI : IUnknown {
   HRESULT f();
};

[coclass, version("2.1"), uuid(12345678-1111-2222-3333-123456789012), 
licensed, threading(free), progid(some.name)]
class CSample : public IMyI {
public:
   int nSize;
};

[module(name="MyLibrary", version="1.0", helpstring="My Library Block")];

必要条件

属性コンテキスト

対象

class、struct

複数回の適用

不可

必要な属性

coclass

無効な属性

なし

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

参照

概念

IDL 属性

クラス属性

ATL サンプル