32位和64位dll判断

时间:2023-03-08 22:14:43
32位和64位dll判断

如何判断一个dll文件是32位还是64位?

1. 开发中经常会使用到VC的一个工具 Dependency Walker
用depends.exe打开dll,文件名前有64标示的即为64位。

32位和64位dll判断

但是这个方式不是万能的,只能简单判断。很多都判断不出来。
比如64位系统下 C:\Windows\System32\msvcrt.dll

32位和64位dll判断
2. 使用visual studio开发工具命令dumpbin
一般位于vs安装目录bin子目录下,如
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64>dumpbin.exe
使用命令 dumpbin /headers yourdll.dll |find "machine"

32位和64位dll判断

machine (x64) 标示该dll为 64位。否则为x86
下面(PE32+) 也是标示该dll为 64位。否则为PE32

参考 http://bbs.pediy.com/showthread.php?p=1369132