“dll导出/导入”是什么意思?

前端之家收集整理的这篇文章主要介绍了“dll导出/导入”是什么意思?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我对这个术语很困惑.我绝对不喜欢dll中的export这个词.原因只是因为,我不明白它是什么.我不知道在哪里寻找.

它在很多场合使用.

>从DLL导出
>从共享库导出表
> dll导出的函数.

任何人都可以解释一下.这是什么意思?在任何其他情况下,它的含义如何变化?什么是出口表?是PE / ELF文件中的.text / .bss / .data部分吗?

为什么我没有听说过dll导入?如果存在这样的事情.什么时候使用.如果不是太多,一个简单的例子也会很棒.

请澄清,我恳请大家使用简单的术语.我已经困惑了.

解决方法

函数暴露给其他要使用的程序时,函数将从dll导出. dll的导出表是公开的函数列表及其可用的地址.通常,dll包含一些导出供公共使用的函数,以及其他未导出的函数 – 它们不能被其他dll或程序使用常规方法调用,但它们可以在内部调用为dll.

您不经常谈论“dll import”,因为dll导入不是单个进程.当你链接到一个DLL时,该dll导出的每个函数都可用于你的dll,但是为了链接到一个dll你通常需要一个.h文件来提供声明,一个.lib文件提供了存根导出函数的指针.这两个东西一起构成了dll导入.但是,通过使用LoadLibrary和GetProcAddress函数(相当于POSIX dlopen和dlsym),可以使用dll函数而不需要这些函数.

猜你在找的Windows相关文章