使用“在靜態庫中使用 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