72)MFC测试动态共享库
动态共享库:
首先我建立一个新的动态库:

然后不选择空项目了,因为我们普通的cpp文件 入口是main win32入口是winmain 那么这个动态库的入口在哪里 我们就是为了看一看:

出来这样的结果:

然后我们看看他是怎么进入这个函数的,就是这个case,下面我们新建一个MFC项目:

发现一个点:

然后 我们修改那个动态库中的代码:

趁着我的动态库是加黑的 所以直接生成就行了。
因为 我们将动态库和MFC项目放到衣蛾解决方案下的 所以 就不用导入 动态库的.h文件 dll文件和lib文件,只不过在写 #pragma时和#include时 那个文件的路径有区别 要写对

修改启动项的项目:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

然后我们看结果

然后 我们看一下那个动态库的入口函数怎么进去的,我们在那个dllmain函数的switch中加一个断点:

看我们的运行:

动态共享段
然后 因为那个dll的文件实际上是 都在内存中是共享的,就是 一块内存中存着dll的内容,要是有程序用到dll内容 就直接使用那块内存中存的数据,他们的模型就相当于这样:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

那么,我们就得建立关键段来保护这些数据。
首先建立那个Source.def方式建立动态库:

然后选择 模块定义文件:

然后我添加关键段的代码:

然后我再修改动态库的头文件的名字:

然后 我们生成动态库:

然后,我们修改一下那个MFC的代码:

给编辑框添加一个变量:

修改几个参数:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

添加setvalue按键的处理函数和getvalue按键处理函数代码内容

然后结果展示:

显示出共享:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


浙公网安备 33010602011771号