繁体   English   中英

同一解决方案中不同项目之间的引用(Visual Studio 2012)

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM