有时候我们想查看一个exe引用了哪些动态库,或者我们想看某个动态库包含哪些接口函数,这时候我们就可以使用dumpbin.exe工具。
1.输入dumpbin - imports *.exe 查看它的输入信息,可以看到它加载了
2.输入dumpbin -imports *.dll,列出所有导出函数。
启动dumpbin.exe方法如下:
开始->所有程序->VS2010->Visual Studio Tools->Visual Studio 命令提示(2010)后,就像普通的cmd一样的命令行环境,就可以正常使用VS自带的一些工具,其中就包括dumpbin。
举例,比如输入如下命令,查看dll信息:
dumpbin -exports d:\Dll.dll 回车
输出如下:
关键看ordinal hint RVA name下面的信息,ordinal下的1是导出函数的序号,hint是提示码,RVA列出的地址是导出函数在DLL模块中的位置,name是导出函数的名称,这些名称有些奇怪,add的名称是? add@@YAHHH@Z,c++为了支持重载,按照自己的规则修改了函数的名字,称为“名字改编”。