nonextensible-Attribut

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

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

Parameter

uuid-Zahl

Gibt eine universell eindeutige Identifikationsnummer 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 des Dispinterfaces an.

Schnittstellendefinition

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

Bemerkungen

Sie können das [nonextensible] -Attribut entweder auf eine Schnittstelle oder ein Dispinterface 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