使用“在静态库中使用 MFC”的静态库


开发工具: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中释放。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM