C-3

作者: x92n | 来源:发表于2022-06-11 15:46 被阅读0次

DLL-动态链接库

lib-静态链接库

编译成obj文件之后,将多个obj文件连接成lib文件。当程序用到lib里面的函数时,只需要指定函数名称,当链接的时候,链接器会自动到lib文件中找函数的实体,把它链接过来,叫做静态链接。

静态链接的缺点是浪费内存和磁盘空间,因为用多少次静态库的代码,就会包含多少分同样的代码。
因为Windows是多任务的,多个进程可能用同一个函数,所以用DLL-动态链接库。
DLL链接的时候,代码不会插到代码中去,在程序运行的时候,才会把DLL中的代码加载到内存中,供程序使用。
物理内存中只保留一份动态链接库的代码,当多个程序使用,使用分页机制将这份代码映射到不同进程的虚拟进程空间里。
函数中要使用动态链接库,必须包含DLL的库名和函数名
一个文件是否为动态链接库,取决于文件结构,系统里面包含公用代码的模块,不管后缀名是什么,都可以是DLL
DLL映射到程序的地址空间里面的,可以看成和程序是一体的,DLL可以使用程序的资源,程序可以使用DLL的资源,所以可以把DLL注入到程序中。

DLL如何写?

在vs2019中,右击项目,点属性----配置属性----常规----配置类型---改为dll

#include <Windows.h>

_declspec(dllexport) void nai(){
    MessageBoxA(0, "naizi", "naizi", 0);
}

相关文章

  • C-3

    DLL-动态链接库 lib-静态链接库 编译成obj文件之后,将多个obj文件连接成lib文件。当程序用到lib里...

  • 读《卜算子·咏梅》有感

    2018.2.22 农历戊戌狗年甲寅月乙酉日 星期四 12°C-3°C 卜算子·咏梅 毛泽东 风雨送春归,...

  • 读《墨梅》有感

    2018.2.13 农历戊戌狗年甲寅月丙子日 星期二 16°C-3°C 墨梅 【元】王冕 吾家洗砚池头树, 个个花...

  • 读《当梅花还只是梅花》有感

    2018.2.10 农历戊戌狗年 甲寅月 癸酉曰 星期六 10°C-3°C 赠范晔 【南北朝】陆凯 折花逢驿使, ...

  • 宝贝,宝贝

    C-3 没人叫他爸爸了 怀里的小人早就沉沉的睡去,只是小手还紧紧的拉着朴灿烈的手指,小嘴偶尔还喃喃几声‘爸爸’朴灿...

  • C3 男人和女人对另一半的需求不同

    笔记:男人渴望被看见,被肯定,被欣赏,被崇拜 女人渴望安全感,被重视和宠爱。 C-3作业: 1.在过往的的生活中你...

网友评论

      本文标题:C-3

      本文链接:https://www.haomeiwen.com/subject/xyummrtx.html