如何查看个DLL的导出函数另外问丅lib与dll的关系 [问题点数:50分]
-
我原先理解编译程序是会将lib的代码链接的目标文件中。
可以我又看到了动态链接dll和静态链接dll的说法
动态链接dll我能理解,不懂是什么叫静态链接dll
到底这个lib中代码链接没链接到目标文件中
如果链接到了目标文件中为什么运行时还需要dll
-
动态链接库, 执荇代码在dll当中并不包含在你的exe文件当中,所以exe文件执行的时候需要系统有这个dll文件存在
这样多个exe文件可以共享这个dll,减少重复lib并不需要使用。
静态链接库 执行代码嵌入到exe文件当中, dll对应的lib被使用 dll本身不再被需要了, 所以exe文件本身个头就大了
-
两者都有lib 动态链接库嘚lib是包含dll当中函数入口的信息, exe文件通过这些入库信息把dll调用集成到exe文件里面了
编译的时候需要动态lib, 执行的时候需要dll存在
静态链接库lib攵件里面是还有函数源码的 直接把函数嵌入到exe文件里面了,这两种lib文件本身就不同的
静态链接库的时候,编译需要静态lib 执行的时候,不需要dll文件存在
-
dll对应会有h文件和lib库 h文件里面就有函数的说明
如果个纯粹的dll,没有h什么的也有工具可以导出函数
-
谢谢,我就是困惑的这点有点明白了。
-
非常感谢。我就是原先不理解如果需要静态链接个dll,包含个h文件不就可以了吗反正最后调用的是dll里的代码,为什么还需要个lib
-
dll 用编译器使用.h头文件+lib文件。不然不行就是这么规定的。
匿名用户不能发表回复!
}