Freigeben über


Die Schnittstellenregistrierungsdatei

Die Schnittstellenregistrierungsdatei sammelt Informationen, die bei der Registrierung von COM-Schnittstellen helfen, die in eine DLL- oder EXE-Datei verpackt sind. Die Schnittstellenregistrierungsdatei unterscheidet sich von anderen generierten Dateien, da sie Informationen aus der Kompilierung mehrerer verschiedener IDL-Dateien sammeln kann. Jeder MIDL-Compiler, der für COM-Schnittstellen ausgeführt wird, sucht zuerst nach einer vorhandenen Datei dlldata.c, und wenn die Datei nicht gefunden wird, wird eine neue Datei dlldata.c erstellt. Wenn eine Datei dlldata.c gefunden wird, werden Informationen zur aktuellen IDL hinzugefügt (sofern nicht vorhanden) oder ersetzt.

Die Schnittstellenregistrierungsdatei wird sicher in einer Multiprozessorumgebung generiert oder aktualisiert, da parallele MIDL-Kompilierungen nicht gleichzeitig in die Datei schreiben können. Da jede datei dlldata.c entweder von der Buildumgebung oder vom Benutzer als schreibgeschützt gekennzeichnet werden kann, implementiert der MIDL-Compiler einen Timeoutansatz, um auf eine Datei zu warten, die nicht geöffnet werden kann, und gibt eine entsprechende Fehlermeldung aus, wenn das Timeout abläuft.

Der Standardname für die aus einer Eingabedatei generierte Schnittstellenregistrierungsdatei lautet dlldata.c. Der MIDL-Compilerschalter /dlldata kann verwendet werden, um den Standardnamen der Datei zu überschreiben. Das Überschreiben des Standardnamens der Schnittstellenregistrierungsdatei ist besonders nützlich, wenn sich einige IDL-Dateien, die in eine gemeinsame Binärdatei gepackt sind, in verschiedenen Verzeichnissen befinden.

Erstellen und Registrieren einer Proxy-DLL