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