¿Qué es el formato de archivo TLB?
Los archivos .tlb son utilizados por objetos y componentes OLE/COM (Component Object Model) en Windows.
Los archivos con la extensión .tlb contienen bibliotecas de tipos que almacenan descripciones de interfaz para objetos COM. Dichos objetos forman los bloques de construcción de los componentes de Windows basados en COM. Una biblioteca de tipos no almacena contenido multimedia; almacena definiciones estructuradas como:
- firmas de interfaces y métodos,
- declaraciones de propiedades y eventos,
- alias de tipos y constantes,
- definiciones de CoClass (clase creable).
Los archivos .tlb almacenan los parámetros y metadatos necesarios para que los clientes interactúen con los componentes COM en tiempo de ejecución. Las bibliotecas de tipos pueden estar incrustadas en un archivo .EXE, una biblioteca .DLL o un control ActiveX .ocx como un recurso TYPELIB, o bien definirse en un archivo .tlb independiente. La función de la API de Windows LoadTypeLib() los carga en tiempo de ejecución.
Existen dos formatos binarios en disco: el formato moderno MSFT (generado por el compilador MIDL a partir del código fuente .idl, magic bytes MSFT) y el formato antiguo SLTG de la era inicial de Visual Basic y Office. Visual Basic y otras herramientas compatibles con COM utilizan las bibliotecas de tipos para habilitar IntelliSense y el enlace tardío (late-binding).
Seguridad y protección
RIESGO: LOWUn archivo .tlb es una descripción de tipo binaria de solo lectura y no contiene código ejecutable. Cargar o inspeccionar uno (en OleView, Visual Studio o un visor de TLB) es seguro. No puede ejecutar código por sí mismo. El componente COM que describe el .tlb (un .dll o .ocx) es la parte ejecutable y conlleva su propio riesgo, pero el .tlb en sí mismo son metadatos inofensivos.
Detalles del formato
en pocas palabras- Archivo de biblioteca de tipos de Delphi (.tlb) - Borland/Embarcadero Delphi también utiliza .tlb para las bibliotecas de tipos COM que genera; es el mismo formato estándar COM de Microsoft, solo que creado por las herramientas TLIBIMP o TLIB de Delphi.
- Archivo temporal del enlazador Watcom C++ - Algunas compilaciones antiguas de Watcom/OpenWatcom utilizaban .tlb como un archivo temporal de objeto/enlazador; no tiene relación con COM, no lo abra como una biblioteca de tipos.
Programas que abren archivos TLB
Detalles técnicos
especificación profunda| Tipo de formato | Biblioteca de tipos binaria COM/OLE que describe interfaces, métodos y definiciones de tipos |
| Magic bytes del formato MSFT | 4D 53 46 54 - firma MSFT en el desplazamiento 0; formato moderno generado por MIDL/CreateTypeLib2 |
| Magic bytes del formato SLTG | 53 4C 54 47 - firma SLTG en el desplazamiento 0; formato antiguo de la era de Visual Basic de CreateTypeLib |
| Orden de bytes | Little-endian |
| Tamaño de archivo típico | 10 KB - 2 MB (varía según el número de interfaces y tipos descritos) |
| Estructura interna | Encabezado fijo, directorio de segmentos, grupo de cadenas, grupo de GUID y registros de descriptores de tipos que codifican todas las definiciones de interfaz, firmas de métodos, constantes y eventos |
| Forma incrustada | Comúnmente almacenado como un recurso TYPELIB dentro de un .dll, .ocx o .exe en lugar de como un archivo independiente |
| Herramienta de compilación | Compilador MIDL (.idl → .tlb); MKTYPLIB obsoleta (.odl → .tlb) |
| API de carga de Windows | LoadTypeLib() / LoadRegTypeLib() |
| Plataforma | Solo Windows (subsistema OLE/COM) |
| Uso principal | Permite el enlace temprano (early binding), IntelliSense y el scripting de automatización COM en herramientas de desarrollo y clientes de tiempo de ejecución |
| Sucesor parcial | .winmd (metadatos ECMA-335) para WinRT; metadatos de ensamblado .NET para interoperabilidad COM administrada |
| Lanzado | 1993 (OLE 2.0 / COM; type library concept introduced for OLE Automation) |
| Última versión | MSFT format used with CreateTypeLib2 API (current; generated by MIDL compiler); SLTG format (older, CreateTypeLib API) |
| Estándar abierto | Sí · libre de regalías |
| Especificación | learn.microsoft.com |
Conversiones de TLB
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos TLB.