nonextensible 属性

[nonextensible] 属性は、IDispatch 実装にインターフェイスの説明に記載されているプロパティとメソッドのみが含まれており、実行時に追加のメンバーで拡張できないことを指定します。 (既定では、オートメーションでは、インターフェイスが実行時にメンバーを追加できるものとします。つまり、拡張可能であると想定しています)。

[
    uuid(uuid-number), 
    nonextensible 
    [, optional-attribute-list]
] 
interface | dispinterface interface-name 
{
    interface-definition
}

パラメーター

uuid-number

インターフェイスの汎用一意の識別番号を指定 します

optional-attribute-list

0 個以上の MIDL インターフェイス属性のリストを指定します。

interface-name

インターフェイスまたはディスパッチインターフェイスの名前を指定します。

interface-definition

インターフェイスまたはディスパッチインターフェイスの定義を形成する IDL ステートメントを指定します

解説

[nonextensible] 属性は、インターフェイスまたはディスパッチインターフェイスに適用できます。 ただし、インターフェイスには [dual] 属性と [oleautomation] 属性も必要です。

Flags

TYPEFLAG_FNONEXTENSIBLE

library Hello
{
    [
        uuid(12345678-1234-1234-1234-123456789ABC), 
        helpstring("A helpful description."),
        oleautomation, 
        dual, 
        nonextensible
    ] 
    interface IHello : IDispatch
    {
        // Interface definition statements.
    }
}

関連項目

タイプ ライブラリの内容

ディスパッチ

デュアル

MIDL を使用したタイプ ライブラリの生成

インターフェイス

ODL ファイルの構文

oleautomation

TYPEFLAGS