有一个静态库,有没有一种简单的方法可以知道它是32位还是64位?

69

有没有工具可以直接测试库文件是32位还是64位的?

4个回答

68

运行Visual Studio命令提示符,以确保您的路径可以找到dumpbin.exe

使用管道符号和findstr来减少有关每个部分的大量输出,并且您可以使用通配符来分析libs文件夹。

dumpbin /headers *.lib | findstr machine

以下是您要查找的示例;

8664 machine (x64)

63

你可以使用带有 /headers 选项的 dumpbin 实用程序。

它会返回库是为32位还是64位架构构建的。

请查看 DUMPBIN参考 查看详情。

示例用法:

c:\>dumpbin libXYZ.lib /headers

5
这就可以了,找“文件头”部分。 - stijn

0
我没有尝试过,但你也可以在Windows上使用类Unix的file等效工具file.exe。你可以从这里下载二进制文件(以及源代码),或者从GNU版本这里下载。

2
这只是标准的GNU文件工具,对吧?我已经尝试过使用来自Git for Windows的最新版本MinGW中的file,并且它显示x64 python36.lib(Windows)与Python 3.6一起分发的current ar archive - cjs

-1
在Visual Studio中,我们可以使用Coreflags.exe了解Lib/dll是32位还是64位。这个工具会自动安装在Visual Studio中。我们可以从命令行运行此命令,命令如下:
 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\CorFlags.exe whatever_Lib_with_path

此命令将返回文件是否被管理。 如果它是已管理的,则可以提供有关其32/64位的信息。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接