同一解决方案中的不同项目之间的引用(Visual Studio 2012)
问题描述:
我无法获得此引用的工作。我的解决方案中有2个项目。一个包装外观和服务器:同一解决方案中的不同项目之间的引用(Visual Studio 2012)
我已经加入了路径“包装外观”的附加包含目录:服务器属性页 - >配置属性 - > C/C++ - >常规。
它看起来很有用,因为intellisence可以在将它们包含在Server项目中时找到正确的.h文件。
的问题是,我得到的是,当我试图从包装外观启动I类解决不了的一些环节出现问题。他们看起来像在图像上。
你能帮助我吗?
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宏观
class SOCK_STREAM_DLL SOCK_Stream {
...
};
3)定义BUILDING_SOCK_STREAM标记您的SOCK_STREAM类符号在您的WrapperFacade项目(配置属性 - > C/C++ - >预处理器 - >预处理器定义)
目标是让WrapperFacade出口rt您想要从服务器项目链接的符号。通过不在服务器中定义BUILDING_SOCK_STREAM,宏将默认为__declspec(dllimport)。
这只是2个正常的项目,而不是一个dll项目。 – Sulby