创建

参考 创建和使用动态链接库 (C++)

有两种方式将工程中的函数导出到 dll 文件中:

  1. 在函数声明中加上 __declspec(dllexport)
  2. 采用模块定义(.def)文件声明。详见 DLL中导出函数的两种方式(dllexport与.def文件)

另外,对于 c 文件创建 dll 时或者想使用 c 编译器创建 dll 时,建议使用 extern "C" 标志。

dll 的使用

应用程序使用 dll 可以采用两种方式:隐式链接调用和显式链接调用。 在使用 dll 之前首先要知道 dll 中函数的结构信息。 VS 在 VC\bin 目录下提供了一个名为 Dumpbin.exe 的小程序,用它可以查看 dll 文件中的函数结构。 两种的对比详见:http://blog.sina.com.cn/s/blog_53004b4901009h3b.html

隐式链接调用采用静态加载的方式,比较简单,需要 .h/.lib/.dll 三件套。

显示链接调用通过 LoadLibraryGetProcAddress 来实现。


本文作者ruleless, 欢迎评论、交流。
转载请务必标注出处: vs平台下dll的创建和使用


«Previous:   RVM 安装和配置指引

»Next:         kmem库中的slab分配算法