インターフェイス属性
次の属性は、interface (または __interface) C++ キーワードに適用されます。
属性 | 説明 |
---|---|
async_uuid | COM インターフェイスの同期と非同期の両方のバージョンを定義するように MIDL コンパイラに指示する UUID を指定します。 |
custom | 独自の属性を定義できるようにします。 |
dispinterface | ディスパッチ インターフェイスとしてインターフェイスを .idl ファイルに配置します。 |
dual | デュアル インターフェイスとしてインターフェイスを .idl ファイルに配置します。 |
export | データ構造を .idl ファイルに配置します。 |
helpcontext | この要素に関するヘルプ ファイルの情報をユーザーに表示するコンテキスト ID を指定します。 |
helpfile | タイプ ライブラリのヘルプ ファイルの名前を設定します。 |
helpstring | 適用先となる要素を記述するために使用される文字列を指定します。 |
helpstringcontext | .hlp または .chm ファイル内のヘルプ トピックの ID を指定します。 |
helpstringdll | ドキュメント文字列参照 (ローカリゼーション) を実行するために使用する DLL の名前を指定します。 |
非表示 | 項目は存在しますが、ユーザー指向ブラウザーでは表示されないことを示します。 |
library_block | .idl ファイルのライブラリ ブロック内にコンストラクトを配置します。 |
local | インターフェイス ヘッダーで使用する場合は、MIDL コンパイラをヘッダー ジェネレーターとして使用できます。 個々の関数で使用する場合は、スタブが生成されないローカル プロシージャを指定します。 |
nonextensible | IDispatch 実装に、インターフェイスの説明に記載されているプロパティとメソッドのみが含まれ、実行時にメンバーを追加して拡張できないことを指定します。 この属性は、dual インターフェイスでのみ有効です。 |
odl | インターフェイスをオブジェクト記述言語 (ODL) インターフェイスとして識別します。 |
object | カスタム インターフェイスを識別します。 |
oleautomation | インターフェイスが Automation と互換性を持つかどうかを示します。 |
pointer_default | パラメーター リストに表示される上位レベルのポインターを除く、すべてのポインターの既定のポインター属性を指定します。 |
ptr | ポインターを完全ポインターとして指定します。 |
restricted | 任意に呼び出せないライブラリのメンバーを指定します。 |
uuid | ライブラリの一意の ID を提供します |
インターフェイスを定義するには、次の規則に従う必要があります。
既定の呼び出し規約は __stdcall です。
GUID を指定しない場合は、GUID が指定されます。
オーバーロードされたメソッドは許可されません。
uuid 属性を指定しない場合、異なる属性プロジェクトで同じインターフェイス名を使用すると、同じ GUID が生成されます。