Librería de tipos

Son archivos especiales que contienen información sobre un objeto COM. Esta información incluye propiedades, métodos, interface, estructuras y otros elementos. Tambien proporciona información sobre los datos de cada propiedad como son los parametros de entrada, de salida, la información de la versión..Estos archivos tienen la extensión .TLB.

Con frecuencia es conveniente que los clientes conozcan los servicios ofrecidos por un servidor COM. El caso más típico es el de un control Activex, supongamos que incorporamos un nuevo control ActiveX, desarrollado en un desconocido lenguaje, en el entorno de Delphi. El entorno tiene que conocer qué propiedades, métodos y eventos soportan el nuevo control, para poder modificarlos desde el Inspector de objetos. La forma en que COM almacena esta información es mediante bibliotecas de tipos (type libraries). Una biblioteca de tipos es un recurso de windows, cuya clase se define como typelib. Este recurso acompaña a la DLL o aplicación que implementa al servidor COM. Cuando utilizamos el asistente de Delphi para crear un objeto de automatización, generamos automáticamtne una biblioteca de tipos para el proyecto. En otros entornos de programación, para definir bibliotecas de tipos se utilizan los lenguajes de script ODL e IDL, pero Delphi utiliza sus propias herramientas visuales para facilitar la tarea. Las bibliotecas de tipos de los proyectos de Delphi se almacenan en ficheros de extensión tlb/type libraries) y son, por supuesto, globales al proyecto completo. Si un proyecto incluye una de estas bibliotecas, podemos leerla y modificarla mediante el comando de menú View|type library. El editor de bibliotecas de tipos se muestra a continuación:

Paralelamente a la edición visual de la biblioteca de tipos, Delphi mantiene actualizada una unidad que contiene las declaractiones equivalentes en Pascal. Cuando una aplicación cliente trabaja con un servidor creado con un lenguaje que no es delphi, también podemos aprovechar su biblioteca de tipos, si es que ésta existe. Pero primero hay que crear la unidad Pascal equivalente a las declaraciones de la biblioteca. Para ello hay que ejecutar el comando Project\import type library, estando activo el proyecto cliente:

En la lista de bibliotecas aparecen todos aquellas que están registradas. Con los botones Add y Remove podemos registrar cualquier otra biblioteca, o eliminar alguna del Registro. En el caso de que la biblioteca contenga uno o más controles Activex, la unidad generado contendrá declaraciones de componentes para los mismos, y un método Register para poder incluir estos componentes en la Paleta de componentes, si así lo desea.


(C) 1999 Database DM. la reproduccion total o parcial de este documento, asi como la dibulgacion de parte o la totalidad