How do i import an Interface Definition Language (idl
) file into Delphi; converting the types and interfaces to a pascal file?
I've tried:
- File, Open: it just shows the text of the .idl text file
- Project, Add to project: It just (acts like) it adds a
.idl
text file to the project - Component, Install component, Import a Type Library, Add: But it causes a handled crash
- Component, Install component, Import ActiveX Control, Add: But it causes a handled crash
using Embarcadero's GenTLB tool: Fails (which makes sense, as GenTLB it doesn't support IDL, only "RIDL"):
D:\>gentlb d:\develop\avatar\pdb\source\import\CorSym.idl Embarcadero GenTLB Version 12.16581 Copyright(c) 1995-2010 Embarcadero Technologies, Inc. Opening 'd:\develop\avatar\pdb\source\import\CorSym.idl' ***ERRORS*** - 3 errors encountered: Error E0001 CorSym.idl 14: 'library' expected, found 'cpp_quote' instead Error E0001 CorSym.idl 49: Type keyword expected, found 'const' instead Error E0001 CorSym.idl 63: '<EOF>' expected, found 'module' instead
Bonus Reading
- DocWiki - Type Libraries
- How can I import a IDL file to DELPHI Project? (2005)
- How to Import IDL to a project (2006)
- Delphi 2010: how to convert .idl files to .TLB files? (2009)
- IDL to Type Library (2011)