使用 dumpbin 检测 dll 文件中包含的函数
dumpbin 是微软 Visual Studio 工具集 自带的一个命令行工具,用于分析可执行文件(.exe、.dll、.obj、.lib)内部结构。
dumpbin 位于 Visual Studio 工具链中,一般路径如下:
C:\Program Files (x86)\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\<version>\bin\Hostx64\x64\dumpbin.exe
要使用它,可以通过以下方式:
- 打开 “Developer Command Prompt for VS 2022”(开发者命令提示符),该环境自动配置好 PATH;
然后在命令行中直接输入:
dumpbin /?
如果能看到帮助信息,说明环境已正确配置。
查看 DLL 的导出函数
dumpbin /exports your.dll
输出说明:
Microsoft (R) COFF/PE Dumper Version 14.42.34433.0
Copyright (C) Microsoft Corporation. All rights reserved.
Dump of file C:\Users\Marco Nie\TEST.dll
File Type: DLL
Section contains the following exports for hasp_windows_x64_107043.dll
00000000 characteristics
68DB892A time date stamp Tue Sep 30 15:39:22 2025
0.00 version
1 ordinal base
79 number of functions
79 number of names
ordinal hint RVA name
1 0 00001000 MyFunctionA
2 1 00002000 MyFunctionB
Summary
A1000 .data
D000 .pdata
133000 .rdata
6000 .reloc
1000 .rsrc
483000 .text
ordinal:函数序号
name:导出函数名(重点)
RVA:函数在文件中的相对虚拟地址
用途:验证 DLL 是否正确导出了接口,比如你加密或封装的 DLL 是否暴露了预期的函数。
如果想要检测是否包含特定名称的函数可以过滤结果:
dumpbin /exports your.dll | findstr str111
以上指令会输出包含 str111 的行。
查看 DLL 依赖的其他库
dumpbin /imports your.dll
这会列出该 DLL 引用的其他 DLL(比如 KERNEL32.dll, USER32.dll 等)。
查看 DLL 架构(32位 / 64位)
dumpbin /headers your.dll | findstr machine
输出示例:
14C machine (x86)
8664 machine (x64)
查看完整头部信息(详细模式)
dumpbin /all your.dll > result.txt
这样可以把所有信息输出到文件中慢慢查看,包括节区、符号、导入表、导出表、资源等。
标签:无