nonextensible (atributo)

El atributo [nonextensible] especifica que la implementación de IDispatch incluye solo las propiedades y los métodos enumerados en la descripción de la interfaz y no se pueden extender con miembros adicionales en tiempo de ejecución. (De forma predeterminada, Automation supone que las interfaces pueden agregar miembros en tiempo de ejecución; es decir, supone que son extensibles).

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

Parámetros

uuid-number

Especifica un número de identificación único universal para la interfaz.

optional-attribute-list

Especifica una lista de cero o más atributos de interfaz MIDL.

interface-name

Especifica el nombre de la interfaz o dispinterface.

interfaz-definición

Especifica instrucciones IDL que forman la definición de la interfaz o dispinterface.

Comentarios

Puede aplicar el atributo [nonextensible] a una interfaz o a una interfaz dispinterface. Sin embargo, una interfaz también debe tener los atributos [dual] y [oleautomation].

Marcas

TYPEFLAG_FNONEXTENSIBLE

Ejemplos

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

Vea también

Contenido de una biblioteca de tipos

dispinterface

Doble

Generación de una biblioteca de tipos con MIDL

Interfaz

Sintaxis de archivo ODL

oleautomation

TYPEFLAGS