Y at-il un moyen de savoir quelles DLL sont requises par un assemblage net? Le programme a été construit avec des bibliothèques externes, mais idont savoir ce que les bibliothèques étaient.Quels sont les dll Externals requis par mon application?
Répondre
Si vous déboguer l'assembly .NET dans Visual Studio, ouvrez le débogage: fenêtre Modules pour voir toutes les DLL sont chargés par le processus.
Vous devez effectuer une recherche Web pour le déambulateur à dépendance DLL. Ce type d'outil montre les dépendances statiques entre les DLL. Les assemblys .NET sont des DLL et devraient fonctionner correctement avec ces sortes d'outils.
Les outils d'analyse statique ne pourront pas vous parler des DLL chargées dynamiquement à l'exécution (par LoadLibrary() etc). Une session de débogage en direct vous les montrera.
Je suppose que vous pouvez ouvrir l'ensemble réflecteur - si elle l'ouvre est un assemblage .Net
S'il s'agit d'une DLL C++ non managée utilisant COM interop avec un assembly .NET Refelctor ne l'ouvrira pas et vous ne pourrez pas dire qu'elle nécessite l'assembly .NET. – Oded
@Oded - Si vous regardez seulement un assemblage, ce serait correct. Si vous parcourez une collection d'assemblages, celui exposé par COM s'ouvrira dans Reflector. Avoir à ouvrir chacun individuellement pourrait prendre du temps - je n'ai pas dit que c'était la meilleure solution :) – Pedro
yep, je suis sûr que c'est un assemby net – shinji14
Dans quel contexte? La question en l'état est trop vague pour y répondre. – Oded
Quelles que soient les DLL qui se trouvaient dans le nœud Référence. Minus ceux dont vous n'avez pas du tout utilisé les types. Regardez avec ildasm.exe au manifeste. –
J'ai édité ma question pour une meilleure explication;) – shinji14