Problème de compatibilité lors d'une migration sous Delphi 6Date de publication : 01/01/2001 , Date de mise à jour : 02/11/2005
Par
DelphiCool (Site) Souvent en installant un composant, destiné à l'origine pour une version antérieure à Delphi 6, on rencontre un problème de compatibilité.
Dans ce cas lors d'une migration on reçoit le message d'erreur suivant:
Et l'unité DsgnIntf dans la clause uses, est surlignée. Il sagit d'un ancien nom, qui n'est plus utilisé dans Delphi 6.
Un petit tour dans l'aide en ligne, et l'on s'aperçoit qu'il faut maintenant ajouter, d'autres unités. declarations avant :
déclarations après modification :
Les unités se trouvent dans le dossier [Delphi]\Source\ToolsAPI
S'il vous faut proxies.pas, le voici. Nous recompilons le paquet ou le composant, et dans certain cas on s'aperçoit que ce n'est pas encore fini. D'autres erreurs de compilation apparaissent :
C'est énervant à la fin. :-o
Rien de bien grave, on regarde où est le problème, il est sur cette ligne :
Je recherche dans l'aide en ligne, le mot TPropertyAttributes, et je ne trouve pas dans quelle unité cette classe est déclarée, mince.
Approfondissons du coté de l'unité dsgnintf, et l'on trouve ceci :
Il faut donc mettre l'unité DesignIntf dans nos déclarations, essayons.
Notre code ressemble à ceci :
Bon ça marche, mais on a cette boîte de dialogue qui apparait :
Effectivement, j'ai vu, dans l'aide, qu'il fallait ajouter Designide dans le paquet.
Cliquons oui. Recompilons le paquet, humm pas d'erreur :-D. Installons le paquet, youpiiii, cela fonctionne correctement. En Bref : Voici les déclarations de départ :
Voici les déclarations d'arrivées :
PS : il est à noter que ces deux unités : VCLEditors, RTLConsts ne sont pas toujours nécessaire dans le paquet.
Dans mon cas, elles ne le sont pas, alors au lieu d'encombrer mon paquet, je les enléve, et mes déclarations finales ressemblent à ceci:
DelphiCool |
Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2005 DelphiCool. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.