windows程序设计笔记(12)

动态链接库
1.目标库与输入库 .lib扩展文件名  用于程序开发期间
目标库在静态链接时将库中的代码加到程序中. 输入库不含代码,而是为链接程序提供信息,以便在引用程序中建立动态链接时提供重定位表
2.动态链接库  .dll扩展文件名 用于程序运行期间.
搜索顺序:
使用者当前目录, 当前目录,Windows系统目录,Windows目录,环境变量PATH可以访问到的目录
多个进程能够共享一个动态链接库中相同的代码,但是DLL为每个进程保存的数据都不同
3.不使用输入库的动态链接
首先,typedef return_value (*PFNNAME)(参数1,...,参数n),然后 HANDLE handle=LoadLibrary(dll的名字);
如果handle非0,则PFNNAME pfn=(PFNNAME)GetProcAddress(handle,funcname), 如果pfn非0 则可用pfn(参数1,...,参数n)
使用后释放库 FreeLibrary(handle)

原文地址:https://www.cnblogs.com/neking/p/2557770.html