1 什么是 DLL?
Dynamic Link Library 动态链接库
操作系统:Windows 专属 主要用途:提供接口实现函数
下面这种,上面的是老版的
加载时机:
静态链接库编译的时候就编译到可执行文件里去了。
而动态链接库有两种加载的方式。
1)第一种是
程序启动的时候把所有的 dll 全加载进去,将 dll 映射到进程地址空间里去,需要
使用就从内存里调就行了,可能出现浪费,比如一开始加载 10 个 dll,但是用到
的可能只有两个。
2)第二种
先把程序运行起来,动态的加载 dll,将 dll 射到进程地址空间里去,然后继续运
行...
实现:
1.新建一个空项目
如下:
hello.h
hello.c
3.项目-常规-配置类型-dll 就生成了
4.重新生成
5.打开头文件或者.c 文件的文件夹
在 sln 同级,在.h 的上一级有个 debug 文件,dll 和 lib 就在这里了
使用 dumpbin 查看 dll 和 exe
打开工具 直接输入 dumpbin,然后回车
第二部:用 cd 进去 debug 路径
最后
看 dll 提供了什么接口。
看 exe 调用了什么 dll.
2. 调用 dll