Schnittstellenattribut

Die Schnittstelle Schlüsselwort (keyword) gibt den Namen der Schnittstelle an. Der Schnittstellenname muss sowohl in der IDL-Datei als auch in der ACF angegeben werden.

[ 
    interface-attribute-list 
] 
interface interface-name [ : base-interface ]
{
}

typedef interface interface-name declarator-list

Parameter

interface-attribute-list

Gibt Attribute an, die für die Schnittstelle als Ganzes gelten. Gültige Schnittstellenattribute für eine IDL-Datei sind [endpoint], [local], [object], [pointer_default], [uuid] und [version]. Gültige Schnittstellenattribute für einen ACF sind [encode], [decode], entweder [auto_handle] oder [implicit_handle] und entweder [code] oder [nocode].

Schnittstellenname

Gibt den Namen der Schnittstelle an. Der Schnittstellenname muss ein eindeutiger Name sein und mit einem Alphabet- oder Unterstrichzeichen beginnen.

base-interface

Gibt den Namen einer Schnittstelle an, von der diese abgeleitete Schnittstelle Memberfunktionen, status Codes und Schnittstellenattribute erbt. Die abgeleitete Schnittstelle erbt keine Typdefinitionen. Verwenden Sie hierzu die import-Schlüsselwort (keyword), um die IDL-Datei der Basisschnittstelle zu importieren.

declarator-list

Gibt Standard-C-Deklaratoren an, z. B. Bezeichner, Zeiger-Deklaratoren und Array-Deklaratoren. Weitere Informationen finden Sie unter Array- und Sized-Pointer Attribute, Arrays und Arrays und Zeiger. Die Deklaratorliste besteht aus einem oder mehreren Deklaratoren, die durch Kommas getrennt sind.

Bemerkungen

Die Schnittstellennamen in der IDL-Datei und in ACF müssen identisch sein, es sei denn, Sie verwenden den MIDL-Compilerschalter /acf.

Der Schnittstellenname bildet den ersten Teil des Namens von Schnittstellenhandles-Datenstrukturen, die Parameter für die RPC-Laufzeitfunktionen sind. Weitere Informationen finden Sie unter RPC_IF_HANDLE.

Wenn der Schnittstellenheader das [object] -Attribut enthält, um eine COM-Schnittstelle anzugeben, muss er auch das [uuid] -Attribut enthalten und die COM-Basisschnittstelle angeben, von der sie abgeleitet wird. Weitere Informationen zu COM-Schnittstellen finden Sie unter [Object].

Sie können auch die Schnittstelle Schlüsselwort (keyword) mit der typedef Schlüsselwort (keyword) verwenden, um einen Schnittstellendatentyp zu definieren.

Beispiele

/* use of interface keyword in IDL file for an RPC interface */ 
[ 
    uuid (00000000-0000-0000-0000-000000000000), 
    version (1.0) 
] 
interface remote_if_2 
{  
    // Interface definition statements.
} 
 
/* use of interface keyword in ACF for an RPC interface */ 
[
    implicit_handle( handle_t xa_bhandle ) 
] 
interface remote_if_2 
{ 
    // Attribute configuration statements.
} 
 
/* use of interface keyword in IDL file for a COM interface */ 
[ 
    object, uuid (00000000-0000-0000-0000-000000000000) 
] 
interface IDerivedInterface : IBaseInterface 
{  
    import "base.idl" 
    Save(); 
} 
 
/* use of interface keyword to define an interface pointer type */ 
typedef interface IStorage *LPSTORAGE;

Weitere Informationen

Anwendungskonfigurationsdatei (Application Configuration File, ACF)

Endpunkt

IDL-Datei (Interface Definition)

lokal

Objekt

pointer_default

RPC_IF_HANDLE

Typedef

UUID

Version