Comment obtenir la liste des unités dans un package compilé Delphi (fichier .dcp)
Question
Existe-t-il un moyen de répertorier les unités / classes d'un package compilé Delphi?
La solution
Vous pouvez créer un nouveau package, ajouter votre fichier .dcp à la clause require, y ajouter une nouvelle unité et utiliser la complétion de code dans la clause uses - il affichera toutes les unités disponibles dans tous les packages requis. Si votre fichier .dcp est le seul package requis et que vous le définissez pour un affichage trié par étendue (clic droit dans le menu déroulant), les unités de votre fichier .dcp doivent se situer en haut.
Je ne sais pas si cela fonctionne déjà dans Delphi 7. Cela fonctionne dans Delphi 2007.
Autres conseils
Avez-vous examiné l'utilitaire TDUMP fourni avec Delphi 7? Un fichier bpl n’est qu’une DLL élégante, vous pouvez donc répertorier ses fonctions exportées:
par exemple.
& C; \ Program Files \ Borland \ Delphi7 \ Bin \ TDUMP.EXE " AFWRTL_RD7.bpl
Turbo Dump Version 5.0.16.12 Droits d'auteur (c) 1988, 2000 Inprise Corporation
Display of File AFWRTL_RD7.BPL
. . .
Exportations à partir de AFWRTL_RD7.bpl
91 nom (s) exporté (s), 91 adresse (s) d'exportation. La base ordinale est 1.
...
000046B4 31 000A __fastcall Fgint::Base2StringToFGInt(System::AnsiString, Fgint::TFGInt&)
...
Si vous examinez les fonctions exportées, le nom de la fonction semble être préfixé par le nom de l'unité ou du package dépendant, par exemple. Fgint :: Base2StringToFGInt est la fonction Base2StringToFGInt dans l'unité Fgint.pas.
Vous pouvez également jeter un coup d'œil à l'utilitaire depend.exe fourni avec le Kit de ressources Windows. Cela fournit une interface graphique permettant d'afficher le contenu d'une DLL (ou BPL).
Voir
pour plus de détails.
Vince
En plus de demander au développeur ou de lire la documentation, la réponse est non.
JCL " utilise un expert " peut montrer beaucoup dans l'EDI.