Best DLL symbols dump utility

2020-06-01 08:06发布

问题:

I have several hundreds of DLLs belonging to a huge spagetti-code-project and need to see which calls do they export or import. And it would be also great if I would be able to get a dependency graph between DLLs. Could anyone recommend me free and reliable utilities for that? Thank you.

Edit: Dependancy walker seems to be not enough: I need to get a list not only for requited DLLs but also to know what those DLLs are for.

回答1:

Dependency Walker (depends.exe) can do that and is free. It also has a profile feature so you can see which DLLs get loaded dynamically.

If your DLLs are .Net assemblies you can use Reflector and if it is a COM DLL with a Type Library you can use OleView to get more information. To get more information out of a regular dll you would have to resort to disassemblers and reading assembly.



回答2:

http://www.ntcore.com/exsuite.php "CFF Explorer" this tool has everything you want. Read features it includes on the main page. Good luck!



回答3:

There is no way to get information what DLLs are used. You have to read the software documentation of your project - hope for you that there is some. Also study the makefiles carefully.

You can only see which DLLs were included (statically - well in a different meaning then normally used) at link time but this is a subset of DLL's. It will not return any plugins or real dynamic loaded libraries.

To get this used at link time libraries you should use the "dumpbin" tool which comes with MSVC. "Dependancy walker" is just a frontend to this tool.

Then write a few scripts and/or use grep to filter the output to analyse the DLL contents.

You can search SO for other reverse engineering techniques. I believe you will find a lot of information because it is a common skill for programmers.



标签: dll