Freigeben über


IDL-Attribute

Herkömmlicherweise eine IDL-Datei bedeutete zu warten, dass Sie mussten:

  • Stellen Sie mit der Struktur und die Syntax einer IDL-Datei vertraut, in der Lage zu sein, sie zu ändern.

  • Erstellen Sie einen Assistenten, mit dem Sie einige Aspekte der IDL-Datei würde ändern können.

Nun können Sie die IDL-Datei aus einer Quellcodedatei mithilfe von Attributen von Visual C++ IDL ändern.In vielen Fällen verfügen über Attribute von Visual C++ IDL den gleichen Namen wie MIDL-Attribute.Wenn der Name eines Attributs von Visual C++ IDL-Datei und ein MIDL-Attribut identisch sind, bedeutet dies, dass das das Visual C++-Attributs Sie die Quellcodedatei in eine IDL-Datei ergibt, die ihr Namensvetter MIDL-Attribut enthält.Allerdings kann ein Attribut von Visual C++ nicht IDL die gesamte Funktionalität eines MIDL-Attributs bereit.

Ein nicht mit COM-AttributeIDL-Attribute, können Sie Schnittstellen definieren.Wenn der Quellcode kompiliert wird, werden die Attribute, mit denen die generierten IDL-Datei definiert.Wenn sie mit COM-Attributen in einem ATL-Projekt verwendet werden, führen einige IDL-Attribute, wie coclass, Code in das Projekt eingefügt werden soll.

Beachten Sie, dass idl_quote Sie MIDL-Konstrukte verwenden können, die nicht in die aktuelle Version von Visual C++ unterstützt werden.Dieses und andere Attribute wie importlib und includelib können Sie vorhandene IDL-Dateien im aktuellen Visual C++-Projekts verwendet werden soll.

Attribut

Beschreibung

aggregierbar

Gibt an, dass ein Steuerelement durch ein anderes Steuerelement aggregiert werden kann.

appobject

Identifiziert die Co-Klasse als Anwendungsobjekt, das einer vollständigen EXE-Anwendung zugeordnet ist, und gibt an, dass Features und Eigenschaften der Co-Klasse in dieser Typbibliothek global verfügbar sind.

async_uuid

Gibt das UUID an, das den MIDL-Compiler, weist die synchronen und asynchronen Versionen einer COM-Schnittstelle zu definieren.

bindable

Gibt an, dass die Eigenschaft Datenbindungen unterstützt.

call_as

Aktiviert eine Funktion nicht remotefähig zu einer Remotewebsite Funktion zugeordnet werden soll.

case

Wird mit dem switch_type-Attribut in einer Union.

Co-Klasse

Platziert Klassendefinition in eine IDL-Datei als Co-Klasse.

-Steuerelement

Gibt an, dass der benutzerdefinierte Typ ein Steuerelement befindet.

cpp_quote

Gibt die angegebene Zeichenfolge in Anführungszeichen, ohne dass die generierte Headerdatei ab.

defaultbind

Gibt die einzige bindbare Eigenschaft an, die das Objekt am besten darstellt.

defaultcollelem

Wird für Visual Basic-Code-Optimierung.

defaultvalue

Ermöglicht die Angabe eines Standardwerts einen typisierten optionalen Parameter zu.

default

Gibt an, dass die benutzerdefinierte oder die Dispatchschnittstelle, die innerhalb einer Co-Klasse definierten Programmierung der Schnittstelle darstellt.

defaultvtable

Definiert eine Schnittstelle als die standardmäßige vtable Schnittstelle für ein Steuerelement.

dispinterface

Platziert eine Schnittstelle in der IDL-Datei als Dispatchschnittstelle.

displaybind

Gibt eine Eigenschaft an, die dem Benutzer angezeigt werden sollte, als bindbar gesucht werden sollen.

dual

Platziert eine Schnittstelle in der IDL-Datei als duale Schnittstelle.

Eingabe

Gibt eine exportierte Funktion oder einer Konstanten in einem Modul indem die Bestimmung des Einstiegspunktes in der DLL an.

first_is

Gibt den Index des ersten zu sendenden Arrayelements an.

helpcontext

Gibt eine Kontext-ID an, die der Benutzer Informationen über dieses Element in der Hilfedatei können.

helpfile

Legt den Namen der Hilfedatei für eine Typbibliothek fest.

helpstringcontext

Gibt die ID des Hilfethemas in einem .hlp oder CHM-Datei an.

helpstringdll

Gibt den Namen der DLL an, der verwendet wird, um Zeichenfolgen Dokumente Lokalisierung (Discovery) auszuführen.

helpstring

Gibt eine Zeichenfolge an, durch die das zugehörige Element beschrieben wird.

hidden

Gibt an, dass das Element vorhanden ist, in einem benutzerorientierten Browser jedoch nicht angezeigt werden sollte.

idl_module

Gibt einen Einstiegspunkt in einer DLL an.

idl_quote

Ermöglicht attributen verwenden oder TO IDL-Konstrukten, die nicht in die aktuelle Version von Visual C++ unterstützt werden.

id

Gibt ein DISPID für eine Memberfunktion an (entweder eine Eigenschaft oder eine Methode in einer Schnittstelle bzw. Dispatchschnittstelle).

iid_is

Gibt die IID der COM-Schnittstelle, die auf einen Schnittstellenzeiger dargestellt wird.

immediatebind

Gibt an, dass die Datenbank sofort alle Änderungen einer Eigenschaft eines datengebundenen Objekts benachrichtigt wird.

importlib

Macht Typen, die bereits auf eine andere Typbibliothek kompiliert wurden, die der Typbibliothek verfügbar ist, die erstellt wird.

import

Gibt ein weiteres .idl, .odl oder Headerdatei, die Definitionen enthält, die Sie aus der IDL-Datei verweisen möchten.

Einschließen

Gibt eine oder mehrere in der generierten IDL-Datei Headerdateien eingefügt werden soll.

includelib

Bewirkt, dass ein in der generierten IDL-Datei oder H-Datei .idl eingeschlossen werden soll.

in

Gibt an, dass ein Parameter aus der aufgerufenen Prozedur an die aufrufende Prozedur übergeben werden soll.

last_is

Gibt den Index des letzten gesendet werden sollen, Arrayelements an.

lcid

Ermöglicht es Ihnen, einen Gebietsschemabezeichner an eine Funktion übergeben.

length_is

Gibt die Anzahl der zu sendenden auf Arrayelemente.

lizenziert

Gibt an, dass die Co-Klasse, auf die es angewendet wird, lizenziert ist, und muss mithilfe IClassFactory2instanziiert werden.

local

Ermöglicht es Ihnen, den MIDL-Compiler als Header Steuerelement-Generator verwenden, wenn Sie im Header des Schnittstellen verwendet werden.Wenn in einer einzelnen Funktion verwendet werden, legt eine lokale Prozedur fest, für die keine Stubs generiert werden.

max_is

Legt den Höchstwert für einen gültigen Arrayindex.

Modul

Definiert den Library-Block in der IDL-Datei.

ms_union

Steuert die Ausrichtung der Netzwerk Informationsdarstellung von nonencapsulated Unions.

no_injected_text

Verhindert, dass der Compiler Code aufgrund der Attributverwendung einfügt.

nonbrowsable

Gibt an, dass ein Schnittstellenmember nicht in einem Eigenschaftenbrowser angezeigt werden soll.

nicht erstellbar

Definiert ein Objekt, das nicht allein instanziiert werden kann.

nicht erweiterbar

Gibt an, dass die IDispatch nur die Implementierung der Eigenschaften und Methoden enthält, die in der Beschreibung der aufgelisteten Schnittstellen und nicht mit zusätzlichen Member zur Laufzeit erweitert werden kann.

object

Identifiziert eine benutzerdefinierte Schnittstelle. synonym mit benutzerdefiniertem Attribut.

odl

Identifiziert eine Schnittstelle während eine Schnittstelle der Objektbeschreibungssprache (ODL).

oleautomation

Gibt an, dass eine Schnittstelle mit Automatisierung kompatibel ist.

optional

Gibt einen optionalen Parameter für eine Memberfunktion auf.

out

Identifiziert Zeigerparameter, die von der aufgerufenen Prozedur an die aufrufende Prozedur zurückgegeben wird (vom Server an den Client).

pointer_default

Gibt die Standardzeiger Attribut für alle Zeiger für Zeiger mit Ausnahme der obersten Ebene angezeigt, die in den Parameterlisten enthalten sein.

Pragma

Gibt die angegebene Zeichenfolge in Anführungszeichen, ohne dass die generierten IDL-Datei ab.

ProgID

Gibt die ProgID für ein COM-Objekt an.

propget

Gibt ein Feature von Eigenschaftenaccessors (rufen Sie ab) an.

propputref

Gibt eine property-setting-Funktion an, die einen Verweis anstelle eines Werts verwendet wird.

propput

Gibt eine property-setting-Funktion an.

PTR

Legt einen Zeiger als vollständiger Zeiger fest.

public

Stellt sicher, dass eine Typdefinition in die Typbibliothek wechselt, selbst wenn sie nicht innerhalb der IDL-Datei verwiesen wird.

Bereich

Gibt einen Bereich der zulässigen Werten für seine Argumente oder Felder, deren Werte zur Laufzeit festgelegt sind.

readonly

Verhindert Zuweisung zu einer Variablen.

ref

Identifiziert einen Verweiszeiger.

requestedit

Gibt an, dass die Eigenschaft die Benachrichtigung OnRequestEdit unterstützt.

restricted

Gibt an, dass eine Bibliothek oder Member eines Moduls, Schnittstellen- oder Dispatchschnittstelle nicht willkürlich aufgerufen werden können.

retval

Legt den Parameter ab, der den Rückgabewert des Members erhält.

size_is

Gibt die Größe des zugeordneten Speichers für sortierte Zeiger, sortierte Zeiger auf sortierten Zeigern und einzel- oder mehrdimensionalen Felder an.

source

Gibt an, dass ein Member einer Klasse, einer Eigenschaft oder Methode eine Ereignisquelle ist.

string

Gibt an, dass eindimensionale char, wchar_t, Byteoder das entsprechende Array oder Zeiger zu einem solchen Array wie eine Zeichenfolge behandelt werden müssen.

switch_is

Gibt den Ausdruck oder den Bezeichner an, die als diskriminierende Union fungiert, die das Gewerkschaftsmitglied auswählt.

switch_type

Gibt den Typ der Variablen, die als diskriminierende Union verwendet wird.

transmit_as

Weist den Compiler an, um einen dargestellten Typ, den Client- und Serveranwendungen bearbeiten, mit dem bereitgestellten Typ zuzuordnen.

uidefault

Gibt an, dass der Member Typinformationens der Standardmember für die Anzeige in der Benutzeroberfläche ist.

eindeutig

Gibt einen eindeutigen Zeiger an.

usesgetlasterror

Erklärt den Aufrufer, dass bei einem Fehler auftreten, wenn diese Funktion GetLastError , der Aufrufer kann dann aufgerufen werden, um den Fehlercode abzurufen aufruft.

uuid

Gibt die eindeutige ID für eine Klasse oder eine Schnittstelle an.

v1_enum

Verweist auf, denen der angegebene 32-Bit-Entität als Aufzählungstyp gesendet wird, und nicht mit dem 16-Bit-Standard.

vararg

Gibt an, dass die Funktion eine variable Anzahl von Argumenten akzeptieren.

vi_progid

Gibt ein versionsunabhängiges ProgID des Formulars an.

wire_marshal

Gibt einen Datentyp an, der für die Übertragung anstelle eines anwendungsspezifischen Datentyps verwendet wird.

Siehe auch

Konzepte

Einschränkungen für Attribute

Weitere Ressourcen

Attribute durch Gruppe