nonextensible-Attribut

Das [ nicht zu ] erweiternde Attribut gibt an, dass die IDispatch-Implementierung nur die in der Schnittstellenbeschreibung aufgeführten Eigenschaften und Methoden enthält und zur Laufzeit nicht mit zusätzlichen Membern erweitert werden kann. (Standardmäßig geht Automation davon aus, dass Schnittstellen Member zur Laufzeit hinzufügen können, d. h. es wird davon ausgegangen, dass sie erweiterbar sind.)

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

Parameter

uuid-number

Gibt eine universell eindeutige ID für die Schnittstelle an.

optional-attribute-list

Gibt eine Liste von null oder mehr MIDL-Schnittstellenattributen an.

Schnittstellenname

Gibt den Namen der Schnittstelle oder dispinterface an.

interface-definition

Gibt IDL-Anweisungen an, die die Definition der Schnittstelle oder dispinterface bilden.

Bemerkungen

Sie können das [ nicht ersierbare Attribut ] entweder auf eine Schnittstelle oder eine Disp-Schnittstelle anwenden. Eine Schnittstelle muss jedoch auch über die [ Attribute dual ] und [ oleautomation ] verfügen.

Flags

TYPEFLAG _ FNONEXTENSIBLE

Beispiele

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

Weitere Informationen

Inhalt einer Typbibliothek

Dispatchschnittstelle

Dual

Generieren einer Typbibliothek mit MIDL

Schnittstelle

ODL-Dateisyntax

oleautomation

TYPEFLAGS