对于Windows中lib文件和dll文件的若干理解

  • Post author:
  • Post category:其他




lib文件

-Windows中的lib文件,分为lib静态库文件和lib动态导入库文件,二者虽然都是lib后缀的文件,但是是有本质的不同的。


lib静态库文件

:

是一组经过编译的obj文件打包的结果,使用静态库时,会将程序中需要的部分,直接拷贝到程序中。属于静态链接。


lib动态导入库文件

:

lib动态导入库提供了动态库中函数和变量的符号解释和位置定位入口等。是为了程序能够更加方便的使用动态库而生成的,一般在生成程序时,需要lib动态导入库,否则将需要其他的方法将dll中的函数或变量导入进来。在程序生成后,如生成dll,或exe文件后,在后续运行程序时,将不再需要lib动态导入库,仅仅使用dll动态库,进行动态链接即可。



dll文件

windows中的dll文件是动态库,这其中是函数和变量的真正定义,用于程序在运行时的动态链接。使用动态库,不需要将自身拷贝到程序中,而是程序在运行时,动态链接到对应的动态库。


依赖


动态库和静态库如果存在依赖其他动态库的关系,必须将自己依赖的动态库包含在程序exe文件所在的文件夹。



版权声明:本文为NEUChords原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。