先丢出两个很重要的关键字
#define DLLimport __declspec(dllimport) //导入函数
#define DLLexprot __declspec(dllexport) //导出函数
假如需要创建一个静态库Lib,不依赖DLL,可以使用__declspec(dllexport) 进行;这么做编译时间长,但是优点在于运行的时候不需要搜索相关函数,编译的时候已经做过处理;
----------.h
DLLimport BOOL GetKeyMessage();
----------.cpp
DLLimport BOOL GetKeyMessage()
{
相关实现;
}
生成一个静态的lib文件和.exe文件;
----------------------------------------导入---------------------------
将之前函数生成的两个文件放入工程目录,包含声明的头文件加入新工程之中,就可以像调用普通函数一样使用他们了。
链接的时候需要将依赖库添加进去:
【项目】->【属性】->【配置属性】->【链接器】->【输入】->【附加依赖项】
也可以直接在代码上进行添加:
#pragma comment (lib,“xxx.lib”)
MFC程序变成DLL的时候还需要在函数入口第一行加一句 AFX_MANAGE_STATE(AfxGetStaticModuleState());
第一次写博客,有错的地方请大神多多斧正