零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 面向对象
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 设计模式
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ STL
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 技术杂谈
一.dumpbin工具简介
dumpbin.exe 为 Microsoft COFF 二进制文件转换器,它显示有关通用对象文件格式 (COFF) 二进制文件的信息,如果想查看其中这些文件或库包含了哪些函数以及相关的信息(符号清单),可以通过 Visual Studio 自带的dumpbin工具来完成。
那么安装 Visual Studio 之后, dumpbin.exe 在哪里呢?默认在 Visual Studio 安装目录中,或者直接使用 Everything 搜索即可;
二.dumpbin工具使用
如果想查看其中这些文件或库包含了哪些函数以及相关的信息(符号清单),可以通过 Visual Studio 自带的 dumpbin 工具来完成。
查看a.dll库中包含哪些函数,可以使用:dumpbin /exports a.dll >1.txt
查看b.exe中加载了哪些动态库,可以使用:dumpbin /imports b.exe >2.txt
查看c.lib中包含哪些函数,可以使用:dumpbin /all /rawdata:none c.lib >3.txt
查看d.obj中包含哪些函数,可以使用:dumpbin /all /rawdata:none d.obj
例如:使用 查看 dumpbin.exe 查看 D 盘 libEGL.dll 中的函数:
执行命令后,1.txt 内容如下:
Microsoft (R) COFF/PE Dumper Version 14.29.30137.0
Copyright (C) Microsoft Corporation. All rights reserved.
Dump of file d:\\libEGL.dll
File Type: DLL
Section contains the following exports for libEGL.dll
00000000 characteristics
FFFFFFFF time date stamp
0.00 version
1 ordinal base
71 number of functions
71 number of names
ordinal hint RVA name
14 0 00001000 eglBindAPI
20 1 00001010 eglBindTexImage
7 2 00001020 eglChooseConfig
40 3 00001030 eglClientWaitSync
33 4 00001040 eglCopyBuffers
23 5 00001050 eglCreateContext
53 6 00001060 eglCreateDeviceANGLE
42 7 00001070 eglCreateImage
51 8 00001080 eglCreateImageKHR
18 9 00001090 eglCreatePbufferFromClientBuffer
10 A 000010A0 eglCreatePbufferSurface
11 B 000010B0 eglCreatePixmapSurface
46 C 000010C0 eglCreatePlatformPixmapSurface
45 D 000010D0 eglCreatePlatformWindowSurface
55 E 000010E0 eglCreateStreamKHR
64 F 000010F0 eglCreateStreamProducerD3DTextureNV12ANGLE
38 10 00001100 eglCreateSync
9 11 00001110 eglCreateWindowSurface
24 12 00001120 eglDestroyContext
43 13 00001130 eglDestroyImage
52 14 00001140 eglDestroyImageKHR
56 15 00001150 eglDestroyStreamKHR
12 16 00001160 eglDestroySurface
39 17 00001170 eglDestroySync
8 18 00001180 eglGetConfigAttrib
6 19 00001190 eglGetConfigs
26 1A 000011A0 eglGetCurrentContext
28 1B 000011B0 eglGetCurrentDisplay
27 1C 000011C0 eglGetCurrentSurface
2 1D 000011D0 eglGetDisplay
1 1E 000011E0 eglGetError
44 1F 000011F0 eglGetPlatformDisplay
35 20 00001200 eglGetPlatformDisplayEXT
34 21 00001210 eglGetProcAddress
41 22 00001220 eglGetSyncAttrib
66 23 00001230 eglGetSyncValuesCHROMIUM
3 24 00001240 eglInitialize
25 25 00001250 eglMakeCurrent
37 26 00001260 eglPostSubBufferNV
68 27 00001270 eglProgramCacheGetAttribANGLE
69 28 00001280 eglProgramCachePopulateANGLE
70 29 00001290 eglProgramCacheQueryANGLE
71 2A 000012A0 eglProgramCacheResizeANGLE
15 2B 000012B0 eglQueryAPI
29 2C 000012C0 eglQueryContext
49 2D 000012D0 eglQueryDeviceAttribEXT
50 2E 000012E0 eglQueryDeviceStringEXT
48 2F 000012F0 eglQueryDisplayAttribEXT
58 30 00001300 eglQueryStreamKHR
59 31 00001310 eglQueryStreamu64KHR
5 32 00001320 eglQueryString
13 33 00001330 eglQuerySurface
36 34 00001340 eglQuerySurfacePointerANGLE
54 35 00001350 eglReleaseDeviceANGLE
21 36 00001360 eglReleaseTexImage
17 37 00001370 eglReleaseThread
57 38 00001380 eglStreamAttribKHR
61 39 00001390 eglStreamConsumerAcquireKHR
63 3A 000013A0 eglStreamConsumerGLTextureExternalAttribsNV
60 3B 000013B0 eglStreamConsumerGLTextureExternalKHR
62 3C 000013C0 eglStreamConsumerReleaseKHR
65 3D 000013D0 eglStreamPostD3DTextureNV12ANGLE
19 3E 000013E0 eglSurfaceAttrib
32 3F 000013F0 eglSwapBuffers
67 40 00001400 eglSwapBuffersWithDamageEXT
22 41 00001410 eglSwapInterval
4 42 00001420 eglTerminate
16 43 00001430 eglWaitClient
30 44 00001440 eglWaitGL
31 45 00001450 eglWaitNative
47 46 00001460 eglWaitSync
Summary
3000 .data
5000 .pdata
13000 .rdata
1000 .reloc
1000 .rsrc
4E000 .text
1000 _RDATA
三.猜你喜欢
- C语言 数组下标越界和内存溢出区别
- C语言 使用指针遍历数组
- C语言 指针和数组区别
- C语言 指针数组和数组指针区别
- C语言 野指针
- C语言 函数值传递和址传递
- 函数不定长参数
- C语言 函数指针
- C语言 指针函数
- C语言 回调函数 callback
- C语言 #pragma once
- C语言 #include <> 与 #include “” 区别
- C语言 const 修饰函数参数
- C语言 const 和 define 区别
- C语言 va_start / va_end / va_arg 自定义 printf 函数
- C语言 main 函数参数 main(int argc, char *argv[])
- C语言 结构体struct简介(一)
- C语言 结构体struct定义和使用(二)
- C语言 结构体struct数组(三)
- C语言 结构体struct指针(四)
- C语言 结构体struct成员函数(五)
- C语言 结构体struct嵌套(六)
- C语言 结构体struct值传递和址传递(七)
- C/C++ error: cannot assign to non-static data member within const member function ‘xxxx’
- C++ 关于类中 const 的使用
- C/C++ =delete
- C/C++ 条件编译 #ifdef
- C/C++ error C2065: “M_PI”: 未声明的标识符
- C/C++ error C2027: 使用了未定义类型“std::tuple”
- C/C++ vs 没有匹配 if 的非法 else 问题解决办法
- C/C++ Visual studio 中文注释导致编译不能通过
- C/C++ error C2589: “(”: “::”右边的非法标记
- C/C++ error:表达式是必须修改的左值
- C/C++ error C4996: ‘getch’: The POSIX name for this item is deprecated. Instead, use the ISO C++ conf
- C/C++ error C4146: 一元负运算符应用于无符号类型,结果仍为无符号类型
- C/C++ std::string 字符串分割
- C/C++ std::string 使用介绍
- Visual Studio 中 dumpbin 工具使用
ChatGPT 3.5 国内中文镜像站免费使用啦
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容