Existe-t-il une visionneuse gratuite de fonctions d'exportation Windows DLL natives, qui affiche le nom de la fonction et une liste de leurs paramètres?Existe-t-il une visionneuse de fonctions d'exportation DLL natives?
Répondre
Vous pouvez utiliser Dependency Walker pour afficher le nom de la fonction. vous pouvez voir les paramètres de la fonction seulement si elle est décorée. lire ce qui suit à partir de la FAQ:
Comment visualiser les paramètres et les types de retour d'une fonction? Pour la plupart des fonctions, cette information est simplement absente du module. Le format de fichier du module Windows fournit uniquement une chaîne de texte unique pour identifier chaque fonction. Il n'y a pas de manière structurée de lister le nombre de paramètres, les types de paramètres ou le type de retour. Cependant, certaines langues font ce qu'on appelle la fonction "décoration" ou "mangling", qui est le processus d'encodage des informations dans la chaîne de texte. Par exemple, une fonction comme int Foo (int, int) codée avec une décoration simple peut être exportée en tant que _Foo @ 8. Le 8 se réfère au nombre d'octets utilisés par les paramètres. Si la décoration C++ est utilisée, la fonction sera exportée sous la forme? Foo @@ YGHHH @ Z, qui peut être directement décodée dans le prototype original de la fonction: int Foo (int, int). Dependency Walker prend en charge la déconsignation C++ à l'aide de la commande Undecorate C++ Functions.
Vous n'êtes pas sûr de sa liste de paramètres, mais following TotalCommander plugin est très utile.
Si vous ne disposez pas du code source et la documentation de l'API, le code de la machine est tout ce qu'il ya, vous devez démonter la bibliothèque dll en utilisant quelque chose comme IDA Pro, une autre option est d'utiliser la version d'essai de PE Explorer. PE Explorer fournit un désassembleur.
Il n'y a qu'une seule façon de comprendre les paramètres: exécutez le désassembleur et lisez la sortie de désassemblage. Malheureusement, cette tâche d'ingénierie inverse de l'interface ne peut pas être automatisée. PE Explorer est livré avec des descriptions pour 39 bibliothèques différentes, y compris les principales bibliothèques du système d'exploitation Windows® (par exemple KERNEL32, GDI32, USER32, SHELL32, WSOCK32), les bibliothèques graphiques clés (DDRAW, OPENGL32) et plus encore.
En quoi cela diffère-t-il de Nirsoft DLL Export Viewer? – Pacerier
dumpbin à partir de l'invite de commande Visual Studio:
C: \ Users \ Andrew \ src2011 \ Cryptography \ cspsdk> dumpbin/exportations csp.dll
COFF Microsoft (R)/PE Dumper Version 10.00.30319.01 Droit d'auteur (C) Microsoft Corporation. Tous les droits sont réservés.
Dump du fichier csp.dll
Type de fichier: DLL
section contient les exportations suivantes pour CSP.dll
00000000 characteristics
3B1D0B77 time date stamp Tue Jun 05 12:40:23 2001
0.00 version
1 ordinal base
25 number of functions
25 number of names
ordinal hint RVA name
1 0 00001470 CPAcquireContext
2 1 000014B0 CPCreateHash
3 2 00001520 CPDecrypt
4 3 000014B0 CPDeriveKey
5 4 00001590 CPDestroyHash
6 5 00001590 CPDestroyKey
7 6 00001560 CPEncrypt
8 7 00001520 CPExportKey
9 8 00001490 CPGenKey
10 9 000015B0 CPGenRandom
11 A 000014D0 CPGetHashParam
12 B 000014D0 CPGetKeyParam
13 C 00001500 CPGetProvParam
14 D 000015C0 CPGetUserKey
15 E 00001580 CPHashData
16 F 000014F0 CPHashSessionKey
17 10 00001540 CPImportKey
18 11 00001590 CPReleaseContext
19 12 00001580 CPSetHashParam
20 13 00001580 CPSetKeyParam
21 14 000014F0 CPSetProvParam
22 15 00001520 CPSignHash
23 16 000015A0 CPVerifySignature
24 17 00001060 DllRegisterServer
25 18 00001000 DllUnregisterServer
Résumé
1000 .data
1000 .rdata
1000 .reloc
1000 .rsrc
1000 .text
Attention à ne pas exécuter 'dumpbin/export' accidentellement ('s' est manquant à la fin), c'est une commande complètement différente. –
J'oublie de vidage et dois rechercher cette réponse tous les six mois ou plus. Merci! – tofutim
DLL Export Viewer par NirSoft peut être utilisé pour afficher les fonctions exportées dans une DLL.
This utility displays the list of all exported functions and their virtual memory addresses for the specified DLL files. You can easily copy the memory address of the desired function, paste it into your debugger, and set a breakpoint for this memory address. When this function is called, the debugger will stop in the beginning of this function.
L'application de Nirsoft ne montre pas de fonctions sans nom :-( – TCS
@MagnusLindhe J'utilise cette application pour copier l'adresse et la définir en tant que point d'arrêt, mais lorsque je la débogue avec Visual Studio (mode Debug, Win32), elle ne s'arrête pas lorsque la fonction est appelée.J'ai utilisé à la fois l'adresse et l'adresse relative pour essayer ceci.Ils ne fonctionnent pas.Que fais-je mal? Peut-être que vous savez? Je ne peux pas trouver plus d'informations à ce sujet –
Le bouton Parcourir pour DLL J'utilise Windows 10 (64bit) – Owl
- 1. Fonctions natives d'Hibernate et Oracle
- 2. Comment utiliser Marshal.ReleaseComObject avec Win32 fonctions natives
- 3. Énumérer les fonctions DLL?
- 4. Obtenez une liste de fonctions pour une DLL
- 5. Récupère les signatures des fonctions exportées dans une DLL
- 6. Visionneuse d'ensemble de point net?
- 7. Comment écrire des fichiers de redirection de politique pour les DLL SxS natives?
- 8. Visionneuse de document Flash
- 9. Appel des fonctions DLL à partir de VB6
- 10. de développement d'applications Windows natives Options de
- 11. Visionneuse de rapports MVC Crystal
- 12. Visionneuse de fichiers SWF gratuite
- 13. Appel de méthodes natives Java intégrées
- 14. Compiler une DLL avec gcc
- 15. Créer un exécutable flash qui appelle des fonctions dll externes
- 16. Exécuter des fonctions .dll non exportées avec python
- 17. Écrire une visionneuse de presse-papiers en C#
- 18. S'il vous plaît suggérer une visionneuse de PDF pour WPF
- 19. Créer une DLL: Comment utiliser une DLL pour créer une nouvelle DLL?
- 20. Comment intégrer des applications natives avec eclipse?
- 21. Génération d'images natives en dehors du cache
- 22. Ecraser des méthodes natives en Javascript
- 23. Visionneuse de miniatures - Zoom arrière/In
- 24. Visionneuse de stratégie efficace pour Ent Lib 4
- 25. Profiling méthodes natives en Java - résultats étranges
- 26. Visionneuse de journal en continu (txt)
- 27. Visionneuse de courrier électronique HTML dans wxPython
- 28. visionneuse de fichier journal pour Eclipse
- 29. Une DLL peut-elle appeler une DLL .NET?
- 30. Procédures stockées natives SQL Server 2005
Merci, mais quand j'essaie d'ouvrir une DLL, il apparaît dans la fenêtre du journal: Erreur: Au moins un module a une importation non résolue en raison d'une fonction d'exportation manquante dans un module implicitement dépendant. Erreur: Des modules avec différents types de CPU ont été trouvés. Avertissement: Au moins un module de dépendance de charge de retard n'a pas été trouvé. Avertissement: Au moins un module a une importation non résolue en raison d'une fonction d'exportation manquante dans un module dépendant de la charge de retard. –
J'utilise Windows 7 x64 Final. –
@Alon: Eh bien, votre application est silencieuse foiré :) la première erreur indique que certains de vos dll sont compilés pour les systèmes 32 bits et certains pour 64 bits. vous ne pouvez charger que des dll avec la même architecture CPU dans le même processus. vous pouvez vivre avec les deux autres erreurs tant que l'application les gère. –