Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse 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. |