Attributo nonextensible

L'attributo [nonextensible] specifica che l'implementazione IDispatch include solo le proprietà e i metodi elencati nella descrizione dell'interfaccia e non possono essere estesi con membri aggiuntivi in fase di esecuzione. Per impostazione predefinita, Automazione presuppone che le interfacce possano aggiungere membri in fase di esecuzione, ovvero presuppone che siano estendibili.

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

Parametri

uuid-number

Specifica un numero di identificazione universalmente univoco per l'interfaccia.

optional-attribute-list

Specifica un elenco di zero o più attributi di interfaccia MIDL.

interface-name

Specifica il nome dell'interfaccia o della dispinterface.

definizione dell'interfaccia

Specifica le istruzioni IDL che formano la definizione dell'interfaccia o della dispinterface.

Commenti

È possibile applicare l'attributo [nonextensible] a un'interfaccia o a una dispinterface. Tuttavia, un'interfaccia deve avere anche gli attributi [dual] e [oleautomation].

Flags

TYPEFLAG_FNONEXTENSIBLE

Esempi

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

Vedere anche

Contenuto di una libreria dei tipi

dispinterface

Dual

Generazione di una libreria dei tipi con MIDL

Interfaccia

Sintassi dei file ODL

oleautomation

TYPEFLAGS