Mappage des noms de symboles dans une bibliothèque de types

De RAD Studio
Aller à : navigation, rechercher

Remonter à TLIBIMP.EXE


Lors de l'importation de bibliothèques de types, un mappage personnalisé pour certaines bibliothèques de types est spécifié dans le fichier tlibimp.sym. Le mappage en cours peut différer de la génération du code dans les releases précédentes.

Dans les releases précédentes, quand de nouvelles bibliothèques de types étaient ajoutées en utilisant un identificateur existant, un caractère de soulignement était ajouté pour distinguer l'identificateur. Ainsi, l'identificateur appelé Application devenait Application_. Des caractères de soulignement supplémentaires pouvaient être ajoutés si une autre bibliothèque de types importée utilisait le même identificateur.

C++Builder vous permet de mapper les noms de symboles dans la bibliothèque de types à l'intérieur du fichier tlibimp.sym, situé dans le répertoire \BIN. Le fichier tlibimp.sym contient le mappage pour certaines applications courantes, notamment Microsoft Word, Microsoft Excel, Microsoft PowerPoint et Microsoft Access. Par exemple, lors de l'automatisation Microsoft Word, le symbole qui s'appelait auparavant Application_ s'appelle maintenant WordApplication.

Exemple TLIBIMP.SYM

L'exemple suivant montre comment les noms de symboles sont remappés dans Microsoft Word. La première ligne (après le commentaire) spécifie le GUID (Globally Unique IDentifier) du serveur dans le registre :

[{00020905-0000-0000-C000-000000000046}:TypeNames]

Le reste des lignes remappe les clés en nouvelles valeurs (au lieu d'ajouter seulement un caractère de soulignement aux identificateurs en conflit) :

;;==============================================;;
;; Map WinWord CoClasses to better names        ;;
;;==============================================;;
[{00020905-0000-0000-C000-000000000046}:TypeNames]
Application=WordApplication
Document=WordDocument
Font=WordFont
ParagraphFormat=WordParagraphFormat
OLEControl=WordOLEControl
LetterContent=WordLetterContent
Global=WordGlobal
Selection=WordSelection
Range=WordRange

Vous pouvez modifier le fichier tlibimp.sym afin de mapper les symboles en conflit pour d'autres serveurs dont vous voulez importer les bibliothèques de types. Utilisez le format illustré dans l'exemple ci-dessus.

Remarque : Faites attention lors de l'édition de tlibimp.sym. Ne changez pas les remappages qui surviennent pour les noms de types ou de membres C++ ou Pascal au début du fichier.

Voir aussi