我有一个二进制文件- Windows静态库(*.lib)。 是否有一种简单的方法可以从库中找到函数名及其接口?

类似emfar和elfdump实用程序(在Linux系统上)?


当前回答

我想要一个像libfile这样的工具。unix中的A。 windows中的等价文件是lib.exe /list libfile.lib。

其他回答

我想要一个像libfile这样的工具。unix中的A。 windows中的等价文件是lib.exe /list libfile.lib。

就像在其他答案中看到的一样,你必须打开Visual Studio版本中提供的开发人员命令提示符,将dumpbin.exe放在执行路径中。否则,您可以手动设置必要的环境变量。

dumpbin /EXPORTS你的库。Lib通常只显示一个很小的符号列表。在许多情况下,它不会显示库导出的函数。

dumpbin /SYMBOLS /EXPORTS你的库。Lib会展示这些符号,但也会展示数量惊人的其他符号。因此,您必须过滤它们,可能使用findstr(如果您需要MS-Windows工具)或grep的管道。

使用这些工具之一搜索Static关键字似乎是一个很好的提示。

"dumpbin -exports"适用于dll,但有时可能不适用于lib。对于lib,我们可以使用"dumpbin -linkermember"或"dumpbin -linkermember:1"。

LIB.EXE是VS的图书管理员

http://msdn.microsoft.com/en-us/library/7ykb2k5f (VS.80) . aspx

(像Unix上的libtool)

DUMPBIN /EXPORTS将获得大部分信息,并点击MSDN将获得其余的信息。

获得一个Visual Studio包;c++