0 -> 使用DLL的优点
0.1 节约内存
如果在一个软件多个模块或者多个软件中使用同样的代码,每份重复代码都会写到内存中,且功能重复,浪费内存。
写在DLL中,那么DLL只会加载一次,只在内存中有一份,所有调用都映射到同一个内存地址,所有使用该DLL的进程会共享这块内存。
0.2 提高维护性
当我们需要更新升级已经完成的软件时,重新编译发布软件是非常不便的。有了DLL技术,只需要替换旧的DLL即可达到更新的目的。
1 -> 编写DLL
1.1 创建DLL
在Visual Studio中创建C++的动态链接库时,会在dllmain.cpp中自动生成以下代码
#include <Windows.h>
BOOL APIENTRY DllMain( HMODULE hModule, //句柄
DWORD ul_reason_for_call, //DLL当前状态
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH: //PROCESS是进程调用
case DLL_THREAD_ATTACH: //THRESAD是