动态链接库(DLL)

1.客户端APP使用DLL

    调用DLL导出的函数或访问数据,客户端代码在编译时必须声明。在链接时,链接器需要解决函数调用或数据访问的信息。DLL在导入库中提供这些信息,一个包含怎样找到函数和数据信息的文件,而不是实际代码。运行时,DLL必须在客户端可用,在操作系统可以找到的位置。

   无论是自己的还是第三方的DLL,客户端应用程序需要很多信息,需要找到声明DLL输出的头部,给链接器的输入库,和DLL本身。一种方式是降所有的这些文件复制到客户端项目,对于第三方DLL(在应用更新时不太可能改变),这是比较好的使用方式。然而,当你也需要编译DLL时,最后避免重复。如果本地复制DLL等文件(正在开发的),很可能在某个复制文件中偶然改变头文件,但没在其他文件中更改,或者使用过时的库。

    为避免不同步的代码,推荐在客户端工程中使用引用路径来直接从DLL工程中引用DLL头文件。同样的,在客户端项目中设置库路径引入DLL导入库。最后,从DLL项目复制编译了的DLL到客户端编译输出目录。

  • 引用.h文件,复制头文件到项目。通过引用路径将路径指向原始的头文件 
  • .lib文件-提供链接信息给链接器
  •  

     

    .dll放置在执行目录下

原文地址:https://www.cnblogs.com/mbaymax/p/14184425.html