Récupérer au runtime la liste des composants delphi disponibles
Bonjour,
C'est une petite idée qui me trotte dans la tête depuis un moment (XE4 -> XE7 en fait) et qui depuis revient régulièrement me hanter.
tout à commencé avec les TADxxxxxxx (anydac) devenant des TFDxxxxxxx (Firedac), puis des migrations BDE et autres -> Firedac
déclenchement final le Défi Pascal !
Gexpert nous fournissait une fonction intéressante : le remplacement d'un composant par un autre
Fonction que je ne retrouve pas dans L'EDI de XE10 :calim2: suis-je aveugle ?
j'en arrive à ma question (avant d'éplucher les sources de Gexpert) , titre de mon sujet
1-Est-il possible de récupérer au runtime (d'une application quelconque) la liste des composants delphi disponibles ?
2-Question subsidiaire s'il est possible de les récupérer, savoir quelles sont ses dépendances (unités) ?
Vous voyez où je veux en venir ? un programme qui permettrait de changer un ou plusieurs composants dans les sources (pas et dfm) pour aider les migrations
est-ce dans le domaine du faisable ? c'est ce que les Questions 1 et 2 pourraient déterminer
Non, je ne participerais pas au défi (surtout à cause des délais) mais Oui si cela abouti je le partagerais
Merci de votre lecture
Serge
Je répond à ma première question
La liste des composants se retrouve dans le Registre (fourre tout Windows)
bien sûr cela va dépendre des versions et de l'éditeur (donc un peu de constantes à mettre dans mon futur programme)
Delphi 7 HKEY_CURRENT_USER\SOFTWARE\Borland\Delphi\7.0\Palette
...
XE4 ? HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BDS\11.0\Palette\Cache
...
XE10 HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BDS\17.0\Palette
j'ai le fond, la forme change elle aussi entre D7 et XE, mais ma première piste est trouvée !