Code généré par l'importation des informations d'une bibliothèque de types

De RAD Studio
Aller à : navigation, rechercher

Remonter à Importation des informations d'une bibliothèque de types

Une fois une bibliothèque de types importée, vous pouvez visualiser l'unité NomBibTypes_TLB générée. En haut, vous trouverez les éléments suivants :

1. Tout d'abord, les déclarations des constantes donnant des noms symboliques aux GUIDS de la bibliothèque de types, ses interfaces et ses CoClasses. Les noms de ces constantes sont générés comme suit :

2. Deuxièmement, des déclarations des CoClasses de la bibliothèque de types. Elles mappent chaque CoClasse sur son interface par défaut.

  • Le GUID de la bibliothèque de types de la forme LBID_NomBibTypes, où NomBibTypes est le nom de la bibliothèque de types.
  • Le GUID d'une interface a la forme IID_NomInterface, où NomInterface est le nom de l’interface.
  • Le GUID d’une dispinterface a la forme DIID_NomInterface, où NomInterface est le nom de la dispinterface.
  • Le GUID d'une CoClasse a la forme CLASS_NomClasse, où NomClasse est le nom de la CoClasse.
  • La directive de compilation VARPROPSETTER est activée. Ce qui vous permet d'utiliser le mot clé var dans la liste de paramètres des méthodes d'accesseur en écriture (setter) des propriétés. Cela désactive l'optimisation de la compilation qui entraînerait la transmission des paramètres par valeur plutôt que par référence. La directive VARPROPSETTER doit être activée lors de la création d'unités TLB pour des composants écrits dans un langage autre que Delphi.

2. Deuxièmement, des déclarations des CoClasses de la bibliothèque de types. Elles mappent chaque CoClasse sur son interface par défaut.

3. Troisièmement, des déclarations pour les interfaces et dispinterfaces de la bibliothèque de types.

4. Quatrièmement, des déclarations pour une classe créateur pour chaque CoClasse dont l’interface par défaut supporte la liaison VTable. La classe créateur a deux méthodes de classe, Create et CreateRemote, qui peuvent être utilisées pour instancier la CoClasse localement (Create) ou à distance (CreateRemote). Ces méthodes renvoient l’interface par défaut de la CoClasse.

Ces déclarations fournissent ce qu'il faut pour créer des instances de la CoClasse et accéder à son interface. Il vous faut ajouter le fichier NomBibTypes_TLB.pas généré à la clause uses de l'unité dans laquelle vous voulez effectuer la liaison à une CoClasse et appeler ses interfaces.

Remarque : Cette portion de l’unité NomBibTypes_TLB est également générée quand vous utilisez l'éditeur de bibliothèques de types ou l'utilitaire de ligne de commande TLIBIMP.

Si vous voulez utiliser un contrôle ActiveX, vous avez également besoin du wrapper VCL généré en plus des déclarations décrites ci-dessus. Le wrapper VCL gère les problèmes de gestion des fenêtres pour le contrôle. Vous pouvez également avoir généré un wrapper VCL pour d'autres CoClasses dans la boîte de dialogue Importation de bibliothèque de types. Ces wrappers VCL simplifient la tâche de création d'objets serveur et d'appel de leurs méthodes. Ils sont particulièrement recommandés si vous voulez que votre application client réponde aux événements.

The declarations for generated VCL wrappers appear at the bottom of the interface section. Component wrappers for ActiveX controls are descendants of Vcl.OleCtrls.TOleControl. Component wrappers for Automation objects descend from Vcl.OleServer.TOleServer. The generated component wrapper adds the properties, events, and methods exposed by the CoClass's interface. You can use this component like any other VCL component.

Avertissement : Vous ne devez pas modifier l'unité NomBibTypes_TLB générée. Elle est régénérée à chaque actualisation de la bibliothèque de types, ce qui écrase toutes les modifications.

Remarque : Pour obtenir les informations les plus à jour sur le code généré, reportez-vous aux commentaires de l'unité NomBibTypes_TLB générée automatiquement.

Voir aussi