Der ACF-Text
Der ACF-Text enthält Konfigurationsattribute, die für Typen und Funktionen gelten, die im Schnittstellentext der IDL-Datei definiert sind. Der Textkörper des ACF kann leer sein, oder er kann ACF include, typedef, Funktions- und Parameterattribute enthalten. Diese Elemente sind alle optional. Attribute, die auf einzelne Typen und Funktionen im ACF-Textkörper angewendet werden, setzen Attribute im ACF-Header außer Kraft.
Der ACF gibt das Verhalten auf dem lokalen Computer an und wirkt sich nicht auf die über das Netzwerk übertragenen Daten aus. Es wird verwendet, um Details eines zu generierenden Stubs anzugeben. Im DCE-Kompatibilitätsmodus (/osf) wirkt sich der ACF nicht auf die Interaktion zwischen Stubs, sondern zwischen dem Stub und Anwendungscode aus.
Ein Parameter, der in der ACF angegeben ist, muss einer der Parameter sein, die in der IDL-Datei angegeben sind. Die Reihenfolge der Spezifikation des Parameters in der ACF ist nicht signifikant, da der Abgleich nach Name und nicht nach Position erfolgt. Die Parameterliste in der ACF kann leer sein, auch wenn die Parameterliste in der entsprechenden IDL-Signatur es nicht ist (dies wird jedoch nicht empfohlen). Abstrakte Deklaratoren (nicht benannte Parameter) in der IDL-Datei führen dazu, dass der MIDL-Compiler Fehler meldet, während die ACF verarbeitet wird, da der Parameter nicht gefunden wird.
Die ACF-include-Direktive gibt die Headerdateien an, die im generierten Header als Teil einer standardmäßigen C-Präprozessor-#include-Anweisung angezeigt werden sollen. Das ACF-Schlüsselwort include unterscheidet sich von einer #include-Anweisung. Das ACF-Schlüsselwort include bewirkt, dass die Zeile „#include Dateiname“ in der generierten Headerdatei angezeigt wird, während die C-language-Anweisung „#include filename“ bewirkt, dass der Inhalt dieser Datei in der ACF platziert wird.
Mit der ACF-typedef-Anweisung können Sie ACF-Typattribute auf Typen anwenden, die zuvor in der IDL-Datei definiert wurden. Die ACF-typedef-Syntax unterscheidet sich von der C-typedef-Syntax.
Mit den ACF-Funktionsattributen können Sie Attribute angeben, die für die gesamte Funktion gelten. Weitere Informationen finden Sie unter [code], [optimize] und [nocode].
Mit den ACF-Parameterattributen können Sie Attribute angeben, die für einzelne Parameter der Funktion gelten. Weitere Informationen finden Sie unter [byte_count].