加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

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

发布时间:2020-12-14 05:29:10 所属栏目:Windows 来源:网络整理
导读:我对这个术语很困惑.我绝对不喜欢dll中的export这个词.原因只是因为,我不明白它是什么.我不知道在哪里寻找. 它在很多场合使用. 从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函数而不需要这些函数.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读