IDL-Dateien
COM verwendet die Microsoft Interface Definition Language (MIDL) zur Beschreibung von COM-Objekten. MIDL ist eine Erweiterung der IDL für verteilte Computerumgebungen, die von Open Software Foundation definiert wurden, um Schnittstellen für Remoteprozeduraufrufe in herkömmlichen Client-/Serveranwendungen zu definieren. MIDL enthält die meisten Attribute und Anweisungen der Objektdefinitionssprache (Object Definition Language, ODL), die ursprünglich zum Generieren von Typbibliotheken für DIE OLE-Automatisierung verwendet wurde.
In C++ und Java erstellt ein Entwickler, der ein COM-Objekt erstellt, eine IDL-Datei, die der MIDL-Compiler dann verarbeitet, um eine Typbibliothek oder Header- und Proxydateien oder beides zu erstellen. Eine Typbibliothek ist eine Binärdatei, die das COM-Objekt oder die COM-Schnittstellen oder beides beschreibt. Eine Typbibliothek ist die kompilierte Version der IDL-Datei. Typbibliotheken unterstützen jedoch nur ODL-Semantik. Insbesondere können sie nicht alle Informationen aus einer IDL-Datei im Zusammenhang mit IDL-Attributen wie [size_is] darstellen. Sie müssen Proxydateien für IDL-Dateien erstellen und verwenden, die von Informationsverlust in der Typbibliothek betroffen sind.
In Visual Basic erstellt ein Entwickler, der ein COM-Objekt erstellt, keine IDL-Datei. Stattdessen sammelt Visual Basic Informationen mithilfe von Klassen- und Projekteigenschaften und erstellt die Typbibliothek direkt.