开发工具:visual studio 2013 pro
一共是两个项目,一个是A:项目名称MySdk,静态库,多字节,在静态库中使用 MFC,运行库使用“多线程调试 DLL (/MDd)”;另一个是B:可执行程序,多字节,在静态库中使用 MFC,预处理器定义增加_AFXDLL,运行库使用“多线程调试 DLL (/MDd)”。
项目A的接口文件中:
#ifdef MYSDKINTERFACE_STATIC #define MYSDKINTERFACE_API #else #ifdef MYSDKINTERFACE_EXPORTS #define MYSDKINTERFACE_API __declspec(dllexport) #else #define MYSDKINTERFACE_API __declspec(dllimport) #endif #endif // MYSDKINTERFACE_STATIC
项目A的预处理器定义增加MYSDKINTERFACE_STATIC;项目B的预处理器定义增加MYSDKINTERFACE_STATIC,附加依赖项增加MySdk.lib,输入库目录增加lib所在目录即可。
MySdk分配的内存需要自己释放,不建议在exe中释放。