![](/img/trans.png)
[英]Compiling projects in different configurations in a multi-projects Visual Studio Solution
[英]Reference between different projects in the same solution (Visual Studio 2012)
我無法獲得此參考資料。 我的解決方案中有2個項目。 包裝外觀和服務器:
我在其他包含目錄中的“包裝外觀”路徑中添加了路徑:服務器屬性頁->配置屬性-> C / C ++->常規。
似乎可行,因為當我將它們包含在Server項目中時,智能可以找到正確的.h文件。
問題是,當我嘗試從Wrapper外觀初始化類時,遇到了一些無法解決的LINK問題。 它們看起來像圖像上的。
你能幫我嗎?
BR
您的鏈接器錯誤表明您的SOCK_Stream類未使用正確的dllimport / dllexport宏標記。
有許多解決此問題的方法。 這只是一個基本方法
1)在您的SOCK_Stream類標題中添加宏:
#ifdef BUILDING_SOCK_STREAM
#define SOCK_STREAM_DLL __declspec(dllexport)
#else
#define SOCK_STREAM_DLL __declspec(dllimport)
#endif
2)用SOCK_STREAM_DLL宏標記您的SOCK_Stream類
class SOCK_STREAM_DLL SOCK_Stream {
...
};
3)在WrapperFacade項目中定義BUILDING_SOCK_STREAM符號(配置屬性-> C / C ++->預處理程序->預處理程序定義)
目的是使WrapperFacade從Server項目中導出要鏈接的符號。 通過不在服務器中定義BUILDING_SOCK_STREAM,宏將默認為__declspec(dllimport)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.