其实再VC中,我们所用得所有API函数都封装再下列三个DLL文件中
KERNEL32.DLL :用于管理内存,进程和线程得各个函数
USER32.DLL:用于执行用户界面任务,如窗口的创建和消息的传递的各个函数
GDI32.DLL :用于显示文本和画图的各个函数
动态链接库:
我们再使用动态库的时候,往往需要提供两个文件,一个引入库,一个DLL,引入库包含被DLL导出的函数和变量的符号名,DLL包含实际的函数和数据,再编译链接可执行文件时,只需要链接引入库,DLL中的函数代码和数据并不复制到可执行文件中,运行的时候,再加载DLL,访问DLL中到处的函数.
它的加载方式有隐式链接和动态加载两种
静态链接库
函数和数据被编译进一个二进制文件中(通常的扩展名为.LIB),再使用静态库的情况下,再编译链接可执行文件式时,链接器从库中复制这些函数和数据并把他们和其他模块组合起来创建最终的可执行文件.