Comment puis-je trouver les dll un exécutable charge?
Si j'ai un exécutable Windows, comment puis-je trouver la dll il va charger?
Je suis juste de parler de ceux qui vont être chargés de manière statique, pas à celles qu'il peut charger dynamiquement avec quelque chose comme la fonction LoadLibrary.
Vous devez vous connecter pour publier un commentaire.
Il existe des utilitaires qui le fera pour vous.
Dans le passé, j'ai utilisé l'outil MS (depends.exe) qui est venu avec (je pense) VB.:
https://msdn.microsoft.com/en-us/library/8kche8ah.aspx
et il y a ceci:
http://dependencywalker.com/
et d'autres encore sans doute.
dumpbin est un outil qui vient avec VC++.
Pour voir ce que les Dll d'un programme d'importation:
Pour voir quelles sont les fonctions (et les Dll) elle va l'importation, l'utilisation
.exe
pas les Dll dont le fichier exécutable dépend indirectement.Ouvrir l'invite de commande puis tapez commande ci-dessous
tasklist /m /fi "imagename eq netbeans.exe"
Type, au lieu netbeans.exe quel que soit le nom de votre fichier exe nom.
Il suffit d'aller à l'invite de commande et tapez
tasklist /m
, vous verrez la liste des fichiers dll utilisés par un programme spécifique.Dependency Walker peut vous aider à déterminer laquelle .dll sera chargé.
Dependency Walker
essayer de trouver les Dll et de leurs dépendances hiérarchiques.Solution pour Microsoft .Net:
progfr est simple et utile:
[http://members.fortunecity.com/michaelmoser/tip11.htm%5D
Il y a un outil très pratique appelé NDepend qui vous donnera toutes les DLL dépendances.
NDepend
est un outil d'analyse statique pour .NET géré code'. Donc, il ne fonctionne que pour .Net applications.