Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Traditionell bedeutet die Aufrechterhaltung einer IDL-Datei Folgendes:
Machen Sie sich mit der Struktur und Syntax einer IDL-Datei vertraut, um sie zu ändern.
Verlassen Sie sich auf einen Assistenten, mit dem Sie einige Aspekte der IDL-Datei ändern können.
Jetzt können Sie die IDL-Datei aus einer Quellcodedatei mithilfe von Visual C++-IDL-Attributen ändern. In vielen Fällen weisen Visual C++-IDL-Attribute denselben Namen wie MIDL-Attribute auf. Wenn der Name eines Visual C++-IDL-Attributs und eines MIDL-Attributs identisch ist, bedeutet dies, dass das Einfügen des Visual C++-Attributs in der Quellcodedatei zu einer IDL-Datei führt, die das namensake MIDL-Attribut enthält. Ein Visual C++-IDL-Attribut stellt jedoch möglicherweise nicht alle Funktionen eines MIDL-Attributs bereit.
Wenn sie nicht mit COM-Attributen verwendet wird, können Sie mit IDL-Attributen Schnittstellen definieren. Wenn der Quellcode kompiliert wird, werden die Attribute verwendet, um die generierte IDL-Datei zu definieren. Bei Verwendung mit COM-Attributen in einem ATL-Projekt führen einige IDL-Attribute, z coclass. B. dazu, dass Code in das Projekt eingefügt wird.
Beachten Sie, dass sie mit idl_quote MIDL-Konstrukte verwenden können, die in der aktuellen Version von Visual C++ nicht unterstützt werden. Diese und andere Attribute wie importlib und includelib helfen Ihnen bei der Verwendung vorhandener IDL-Dateien in Ihrem aktuellen Visual Studio C++-Projekt.
| Attribute | Beschreibung |
|---|---|
| Aggregierbar | Gibt an, dass ein Steuerelement von einem anderen Steuerelement aggregiert werden kann. |
| appobject | Identifiziert die Coclass als Anwendungsobjekt, das einer vollständigen EXE-Anwendung zugeordnet ist, und gibt an, dass die Funktionen und Eigenschaften der Coclass global in dieser Typbibliothek verfügbar sind. |
| async_uuid | Gibt die UUID an, die den MIDL-Compiler angibt, um synchrone und asynchrone Versionen einer COM-Schnittstelle zu definieren. |
| bindable | Gibt an, dass die Eigenschaft die Datenbindung unterstützt. |
| call_as | Ermöglicht die Zuordnung einer nicht aktualisierbaren Funktion zu einer Remotefunktion. |
| case | Wird mit dem attribut switch_type in einer Union verwendet. |
| coclass | Platziert die Klassendefinition als CO-Klasse in eine IDL-Datei. |
| control | Gibt an, dass der benutzerdefinierte Typ ein Steuerelement ist. |
| cpp_quote | Gibt die angegebene Zeichenfolge ohne Anführungszeichen in die generierte Headerdatei aus. |
| defaultbind | Gibt die einzelne, bindbare Eigenschaft an, die das Objekt am besten darstellt. |
| defaultcollelem | Wird für die Visual Basic-Codeoptimierung verwendet. |
| defaultvalue | Ermöglicht die Angabe eines Standardwerts für einen typierten optionalen Parameter. |
| default | Gibt an, dass die benutzerdefinierte Schnittstelle oder Disp-Schnittstelle innerhalb einer Co-Klasse die Standard-Programmierschnittstelle darstellt. |
| defaultvtable | Definiert eine Schnittstelle als Standard-vtable-Schnittstelle für ein Steuerelement. |
| dispinterface | Fügt eine Schnittstelle in die IDL-Datei als Verteilschnittstelle ein. |
| displaybind | Gibt eine Eigenschaft an, die dem Benutzer als bindungsfähig angezeigt werden soll. |
| dual | Platziert eine Schnittstelle in der IDL-Datei als duale Schnittstelle. |
| entry | Gibt eine exportierte Funktion oder Konstante in einem Modul an, indem der Einstiegspunkt in der DLL identifiziert wird. |
| first_is | Gibt den Index des ersten zu übertragenden Arrayelements an. |
| helpcontext | Gibt eine Kontext-ID an, mit der der Benutzer Informationen zu diesem Element in der Hilfedatei anzeigen kann. |
| helpfile | Legt den Namen der Hilfedatei für eine Typbibliothek fest. |
| helpstringcontext | Gibt die ID eines Hilfethemas in einer HLP- oder CHM-Datei an. |
| helpstringdll | Gibt den Namen der DLL an, die zum Nachschlagen von Dokumentzeichenfolgen (Lokalisierung) verwendet werden soll. |
| helpstring | Gibt eine Zeichenfolge an, die zum Beschreiben des Elements verwendet wird, auf das sie angewendet wird. |
| hidden | Gibt an, dass das Element vorhanden ist, aber nicht in einem benutzerdefinierten Browser angezeigt werden soll. |
| idl_module | Gibt einen Einstiegspunkt in einer DLL an. |
| idl_quote | Ermöglicht ihnen die Verwendung von Attributen oder IDL-Konstrukten, die in der aktuellen Version von Visual C++ nicht unterstützt werden. |
| id | Gibt eine DISPID für eine Memberfunktion an (entweder eine Eigenschaft oder eine Methode, in einer Schnittstelle oder dispinterface). |
| iid_is | Gibt die IID der COM-Schnittstelle an, auf die von einem Schnittstellenzeiger verwiesen wird. |
| immediatebind | Gibt an, dass die Datenbank sofort über alle Änderungen an einer Eigenschaft eines datengebundenen Objekts benachrichtigt wird. |
| importlib | Stellt Typen, die bereits in einer anderen Typbibliothek kompiliert wurden, der erstellten Typbibliothek zur Verfügung. |
| Import | Gibt eine weitere IDL-, ODL- oder Headerdatei an, die Definitionen enthält, auf die Sie aus der IDL-Hauptdatei verweisen möchten. |
| include | Gibt eine oder mehrere Headerdateien an, die in die generierte IDL-Datei aufgenommen werden sollen. |
| includelib | Bewirkt, dass eine IDL- oder H-Datei in die generierte IDL-Datei eingeschlossen wird. |
| in | Gibt an, dass ein Parameter von der aufrufenden Prozedur an die aufgerufene Prozedur übergeben werden soll. |
| last_is | Gibt den Index des letzten zu übertragenden Arrayelements an. |
| lcid | Hiermit können Sie einen Gebietsschemabezeichner an eine Funktion übergeben. |
| length_is | Gibt die Anzahl der zu übertragenden Arrayelemente an. |
| licensed | Gibt an, dass die Co-Klasse, für die sie gilt, lizenziert ist und mithilfe IClassFactory2von Instanziierung instanziiert werden muss. |
| local | Ermöglicht ihnen, den MIDL-Compiler als Headergenerator zu verwenden, wenn er im Schnittstellenheader verwendet wird. Wenn sie in einer einzelnen Funktion verwendet wird, wird eine lokale Prozedur festgelegt, für die keine Stubs generiert werden. |
| max_is | Legt den Maximalwert für einen gültigen Arrayindex fest. |
| module | Definiert den Bibliotheksblock in der IDL-Datei. |
| ms_union | Steuert die Ausrichtung der Netzwerkdatendarstellung von nicht gekapselten Gewerkschaften. |
| no_injected_text | Verhindert, dass der Compiler Code als Ergebnis der Attributverwendung eingibt. |
| nonbrowsable | Gibt an, dass ein Schnittstellenelement nicht in einem Eigenschaftenbrowser angezeigt werden soll. |
| noncreatable | Definiert ein Objekt, das nicht selbst instanziiert werden kann. |
| nonextensible | Gibt an, dass die IDispatch Implementierung nur die eigenschaften und Methoden enthält, die in der Schnittstellenbeschreibung aufgeführt sind und nicht zur Laufzeit mit zusätzlichen Membern erweitert werden können. |
| object | Identifiziert eine benutzerdefinierte Schnittstelle; synonym mit benutzerdefiniertem Attribut. |
| odl | Identifiziert eine Schnittstelle als ODL-Schnittstelle (Object Description Language). |
| oleautomation | Gibt an, dass eine Schnittstelle mit der Automatisierung kompatibel ist. |
| optional | Gibt einen optionalen Parameter für eine Memberfunktion an. |
| out | Gibt die Zeigerparameter an, die von der aufgerufenen Prozedur an die aufrufende Prozedur zurückgegeben werden (vom Server an den Client). |
| pointer_default | Gibt das Standardzeiger-Attribut für alle Zeiger mit Ausnahme von Zeigern auf oberster Ebene an, die in Parameterlisten angezeigt werden. |
| pragma | Gibt die angegebene Zeichenfolge ohne Anführungszeichen in die generierte IDL-Datei aus. |
| progid | Gibt die ProgID für ein COM-Objekt an. |
| propget | Gibt eine Eigenschaftsaccessorfunktion (get) an. |
| propputref | Gibt eine Eigenschaftseinstellungsfunktion an, die einen Verweis anstelle eines Werts verwendet. |
| propput | Gibt eine Eigenschaftseinstellungsfunktion an. |
| ptr | Legt einen Zeiger als vollständigen Zeiger fest. |
| public | Stellt sicher, dass ein Typedef in die Typbibliothek wechselt, auch wenn nicht in der IDL-Datei darauf verwiesen wird. |
| range | Gibt einen Bereich zulässiger Werte für Argumente oder Felder an, deren Werte zur Laufzeit festgelegt werden. |
| readonly | Verbietet die Zuweisung zu einer Variablen. |
| ref | Identifiziert einen Verweiszeiger. |
| requestedit | Gibt an, dass die Eigenschaft die OnRequestEdit-Benachrichtigung unterstützt. |
| restricted | Gibt an, dass eine Bibliothek oder ein Element eines Moduls, einer Schnittstelle oder eines Dispinterfaces nicht willkürlich aufgerufen werden kann. |
| retval | Legt den Parameter fest, der den Rückgabewert des Elements empfängt. |
| size_is | Gibt die Größe des Speichers an, der für Die Größe von Zeigern zugewiesen ist, Die Größe von Zeigern und ein- oder mehrdimensionale Arrays. |
| Quelle | Gibt an, dass ein Element einer Klasse, Eigenschaft oder Methode eine Quelle von Ereignissen ist. |
| string | Gibt an, dass das eindimensionale char, wchar_t, byte, oder gleichwertige Array oder der Zeiger auf ein solches Array als Zeichenfolge behandelt werden muss. |
| switch_is | Gibt den Ausdruck oder bezeichner an, der als Union diskriminant fungiert, der das Union-Mitglied auswählt. |
| switch_type | Gibt den Typ der Variablen an, die als Union diskriminant verwendet wird. |
| transmit_as | Weist den Compiler an, einen präsentierten Typ zuzuordnen, den Client- und Serveranwendungen bearbeiten, mit einem übertragenen Typ. |
| uidefault | Gibt an, dass das Typinformationselement das Standardelement für die Anzeige auf der Benutzeroberfläche ist. |
| unique | Gibt einen eindeutigen Zeiger an. |
| usesgetlasterror | Teilt dem Aufrufer mit, dass der Aufrufer den GetLastError Fehlercode abrufen kann, wenn beim Aufrufen dieser Funktion ein Fehler auftritt. |
| uuid | Gibt die eindeutige ID für eine Klasse oder Schnittstelle an. |
| v1_enum | Leitet an, dass der angegebene Enumerationstyp als 32-Bit-Entität übertragen wird, anstatt als 16-Bit-Standard. |
| vararg | Gibt an, dass die Funktion eine variable Anzahl von Argumenten verwendet. |
| vi_progid | Gibt eine versionsunabhängige Form der ProgID an. |
| wire_marshal | Gibt einen Datentyp an, der anstelle eines anwendungsspezifischen Datentyps für die Übertragung verwendet wird. |