C 语言动态库封装与设计 ( Windows 动态库简介 | Visual Studio 调用动态库 )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C 语言动态库封装与设计 ( Windows 动态库简介 | Visual Studio 调用动态库 )相关的知识,希望对你有一定的参考价值。





一、Windows 动态库简介



在 C:\\Windows\\System32 目录中 , 存放着 Windows 中的动态库 ;

在 Visual Studio 项目中 , 选择 " 菜单栏 / 生成解决方案 " 选项 ,

在项目的根目录中 , 生成 Debug 目录 , 在目录下生成了如下文件 :

xxx.lib 是资源描述文件 , 用于描述 xxx.dll 动态库的 ;

xxx.dll 动态库 中包含了 函数的 二进制机器码 , 也就是 函数体 代码 ;


Windows 中 ( .dll 动态库 ) 与 Linux 中 ( .so 动态库 ) 动态库规范不同 ;





二、Visual Studio 调用动态库



拷贝动态库文件 : 将编译出的 xxx.lib 和 xxx.dll 文件 , 拷贝到 Visual Studio 工程的 源码目录 中 , 也就是与 主函数 源码所在目录 ; 此处 Hello.cpp 是主函数 ;

右键点击 " 解决方案资源管理器 " 中的解决方案 , 在弹出的菜单中 , 选择 " 属性 " 选项 ;

在 属性页 中 , 选择 " 链接器 / 输入 / 附加依赖项 " , 选择编辑 " 附加依赖项 " ;

输入 拷贝到源码路径的 xxx.lib 名称 , 目的是让编译器通过该 xxx.lib 文件查找对应的 xxx.dll 动态库文件 ;

以上是关于C 语言动态库封装与设计 ( Windows 动态库简介 | Visual Studio 调用动态库 )的主要内容,如果未能解决你的问题,请参考以下文章

C语言静态库动态库的封装和注意事项

《C语言杂记》静态库和动态库(Linux版)

《C语言杂记》静态库和动态库(Linux版)

Windows下C语言调用dll动态链接库

封装socketclient动态链接库

动态库(非MFC动态库)