有没有办法从DLL 文件 中获取所有API(导出) 函数?
我知道 Depends 和 PE Explorer 等程序可以做到这一点,但它们都无法检索参数列表。
最佳答案
除非导出的函数类似于 COM DLL 或带有 munging 的 C++,否则根本没有提供参数的信息。通常可以找到参数的总大小,除以 4 很可能会得到接近正确数字的值,但除此之外就需要体力劳动了,阅读汇编代码来弄清楚参数是如何计算的用过。
如果它是一个 COM DLL,它可能包含一个类型库,告诉所有 DLL 的内容以及如何使用它。在这种情况下,通常只有非常几个导出函数需要查看——您必须使用 COM 才能获得真正的功能。
如果它们是经过修改的 C++ 名称,那么它将取决于用于创建 DLL 的编译器/工具集。例如,如果它是用 VC++ 创建的,则可以使用 UnDecorateSymbolName()
获取全名和参数。
关于winapi - 如何找出DLL文件的API函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1917539/